summaryrefslogtreecommitdiffstats
path: root/libglusterfs
diff options
context:
space:
mode:
authorJeff Darcy <jdarcy@redhat.com>2015-12-09 14:19:00 -0500
committerJeff Darcy <jdarcy@redhat.com>2016-02-09 06:10:58 -0800
commit1f3df9f1e028f6bf978004d7f1d82fe32f6975c9 (patch)
tree5066baf13c829b6ba4934e2f799b2e2405588c20 /libglusterfs
parent501a31eadbce8cfe9ec0ed149bafc8fa6460ff9a (diff)
NSR: nsr client code generation patch
This version of the client checks if the error returned is EREMOTE or ENOTCONN, and if not unwnds the error back In case of a EREMOTE or ENOTCONN error, it retries on all the bricks in the replica subgroup, and if the error still persists, it waits for a sec before going through the same exercise again. Change-Id: I916bed32f0820f381dd60fdde3d05b71c69a34dc Signed-off-by: Avra Sengupta <asengupt@redhat.com> Reviewed-on: http://review.gluster.org/12388 Smoke: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Jeff Darcy <jdarcy@redhat.com> NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org> CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
Diffstat (limited to 'libglusterfs')
-rw-r--r--libglusterfs/src/call-stub.h7
-rw-r--r--libglusterfs/src/glfs-message-id.h4
2 files changed, 11 insertions, 0 deletions
diff --git a/libglusterfs/src/call-stub.h b/libglusterfs/src/call-stub.h
index f34073977e4..01621368ee9 100644
--- a/libglusterfs/src/call-stub.h
+++ b/libglusterfs/src/call-stub.h
@@ -760,4 +760,11 @@ fop_seek_cbk_stub (call_frame_t *frame, fop_seek_cbk_t fn,
void call_resume (call_stub_t *stub);
void call_stub_destroy (call_stub_t *stub);
void call_unwind_error (call_stub_t *stub, int op_ret, int op_errno);
+
+/*
+ * Sometimes we might want to call just this, perhaps repeatedly, without
+ * having (or being able) to destroy and recreate it.
+ */
+void call_resume_wind (call_stub_t *stub);
+
#endif
diff --git a/libglusterfs/src/glfs-message-id.h b/libglusterfs/src/glfs-message-id.h
index e1b75400bbd..d002fd57fb7 100644
--- a/libglusterfs/src/glfs-message-id.h
+++ b/libglusterfs/src/glfs-message-id.h
@@ -162,6 +162,10 @@ GLFS_MSGID_COMP_SYMLINK_CACHE_END
#define GLFS_MSGID_COMP_SHARD GLFS_MSGID_COMP_CHANGELOG_LIB_END
#define GLFS_MSGID_COMP_SHARD_END (GLFS_MSGID_COMP_SHARD +\
GLFS_MSGID_SEGMENT)
+
+#define GLFS_MSGID_COMP_NSR GLFS_MSGID_COMP_SHARD_END
+#define GLFS_MSGID_COMP_NSR_END (GLFS_MSGID_COMP_SHARD_END+\
+ GLFS_MSGID_SEGMENT)
/* --- new segments for messages goes above this line --- */
#endif /* !_GLFS_MESSAGE_ID_H_ */