diff options
author | Gaurav Yadav <gyadav@redhat.com> | 2017-10-05 23:44:46 +0530 |
---|---|---|
committer | jiffin tony Thottan <jthottan@redhat.com> | 2017-11-06 12:16:15 +0000 |
commit | 1a1bdfbffc81981a80af40ebf000194d9bcd1bf0 (patch) | |
tree | 89801e2b992ed3697a2f4f1bf1117c754cb7e58d /xlators/mgmt/glusterd/src/glusterd.h | |
parent | 4b480579320d6c594123e44fbedcba71f8815947 (diff) |
glusterd : introduce timer in mgmt_v3_lock
Problem:
In a multinode environment, if two of the op-sm transactions
are initiated on one of the receiver nodes at the same time,
there might be a possibility that glusterd may end up in
stale lock.
Solution:
During mgmt_v3_lock a registration is made to gf_timer_call_after
which release the lock after certain period of time
>mainline patch : https://review.gluster.org/#/c/18437/
Change-Id: I16cc2e5186a2e8a5e35eca2468b031811e093843
BUG: 1503239
Signed-off-by: Gaurav Yadav <gyadav@redhat.com>
Diffstat (limited to 'xlators/mgmt/glusterd/src/glusterd.h')
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd.h b/xlators/mgmt/glusterd/src/glusterd.h index d4bb236b36b..808bce2d237 100644 --- a/xlators/mgmt/glusterd/src/glusterd.h +++ b/xlators/mgmt/glusterd/src/glusterd.h @@ -174,6 +174,7 @@ typedef struct { * cluster with no * transaction ids */ + dict_t *mgmt_v3_lock_timer; struct cds_list_head mount_specs; pthread_t brick_thread; void *hooks_priv; @@ -194,6 +195,7 @@ typedef struct { uint32_t generation; int32_t workers; uint32_t blockers; + uint32_t mgmt_v3_lock_timeout; } glusterd_conf_t; |