summaryrefslogtreecommitdiffstats
path: root/xlators/debug/error-gen/src/error-gen.h
diff options
context:
space:
mode:
authorvinayak hegde <vinayak@gluster.com>2009-10-08 23:35:57 +0000
committerAnand V. Avati <avati@dev.gluster.com>2009-10-08 22:59:48 -0700
commit3949b2828a78e4ecb95edb06f09fb9e7e3e5ce9b (patch)
tree7af7c4cb55c075eed8821214d9e7e8987ce69d16 /xlators/debug/error-gen/src/error-gen.h
parentd160d55c41913de26a43117b00fcab63746ce96d (diff)
debug/error-gen: Feature enhancement of error-gen translator
In debug/error-gen translator 3-options are provided. failure - specifies the percentage failure in fops. error-no - specifies which error-no to be returned. enable - specifies which are the fops to be enabled for this translator. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 291 (feature enhancement of error-gen translator) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=291
Diffstat (limited to 'xlators/debug/error-gen/src/error-gen.h')
-rw-r--r--xlators/debug/error-gen/src/error-gen.h89
1 files changed, 89 insertions, 0 deletions
diff --git a/xlators/debug/error-gen/src/error-gen.h b/xlators/debug/error-gen/src/error-gen.h
new file mode 100644
index 00000000000..7fb5fdfb56c
--- /dev/null
+++ b/xlators/debug/error-gen/src/error-gen.h
@@ -0,0 +1,89 @@
+/*
+ Copyright (c) 2008-2009 Gluster, Inc. <http://www.gluster.com>
+ This file is part of GlusterFS.
+
+ GlusterFS is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published
+ by the Free Software Foundation; either version 3 of the License,
+ or (at your option) any later version.
+
+ GlusterFS is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see
+ <http://www.gnu.org/licenses/>.
+*/
+
+#ifndef _ERROR_GEN_H
+#define _ERROR_GEN_H
+
+#ifndef _CONFIG_H
+#define _CONFIG_H
+#include "config.h"
+#endif
+
+#define GF_FAILURE_DEFAULT 10
+#define NO_OF_FOPS 42
+
+enum {
+ ERR_LOOKUP,
+ ERR_STAT,
+ ERR_READLINK,
+ ERR_MKNOD,
+ ERR_MKDIR,
+ ERR_UNLINK,
+ ERR_RMDIR,
+ ERR_SYMLINK,
+ ERR_RENAME,
+ ERR_LINK,
+ ERR_TRUNCATE,
+ ERR_CREATE,
+ ERR_OPEN,
+ ERR_READV,
+ ERR_WRITEV,
+ ERR_STATFS,
+ ERR_FLUSH,
+ ERR_FSYNC,
+ ERR_SETXATTR,
+ ERR_GETXATTR,
+ ERR_REMOVEXATTR,
+ ERR_OPENDIR,
+ ERR_READDIR,
+ ERR_READDIRP,
+ ERR_GETDENTS,
+ ERR_FSYNCDIR,
+ ERR_ACCESS,
+ ERR_FTRUNCATE,
+ ERR_FSTAT,
+ ERR_LK,
+ ERR_SETDENTS,
+ ERR_CHECKSUM,
+ ERR_XATTROP,
+ ERR_FXATTROP,
+ ERR_INODELK,
+ ERR_FINODELK,
+ ERR_ENTRYLK,
+ ERR_FENTRYLK,
+ ERR_SETATTR,
+ ERR_FSETATTR,
+ ERR_STATS,
+ ERR_GETSPEC
+};
+
+typedef struct {
+ int enable[NO_OF_FOPS];
+ int op_count;
+ int failure_iter_no;
+ char *error_no;
+ gf_lock_t lock;
+} eg_t;
+
+typedef struct {
+ int error_no_count;
+ int error_no[20];
+} sys_error_t;
+
+#endif