diff options
author | Pranith Kumar K <pranithk@gluster.com> | 2010-09-22 06:17:32 +0000 |
---|---|---|
committer | Vijay Bellur <vijay@dev.gluster.com> | 2010-09-22 08:09:25 -0700 |
commit | 679395dc7ed5b716f3fb37886f7ec8e59ab02659 (patch) | |
tree | ca539fe0f615eec6e310ffe735b277f9fce5135d /xlators | |
parent | 2915e10dd0ffe529ddf747451051cf9924c708f3 (diff) |
mgmt/glusterd: skip sending req to disconnected peers
Signed-off-by: Pranith Kumar K <pranithk@gluster.com>
Signed-off-by: Vijay Bellur <vijay@dev.gluster.com>
BUG: 1673 ()
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1673
Diffstat (limited to 'xlators')
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd3_1-mops.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd3_1-mops.c b/xlators/mgmt/glusterd/src/glusterd3_1-mops.c index 2d0b223a9..d4b583092 100644 --- a/xlators/mgmt/glusterd/src/glusterd3_1-mops.c +++ b/xlators/mgmt/glusterd/src/glusterd3_1-mops.c @@ -986,6 +986,8 @@ glusterd3_1_cluster_lock (call_frame_t *frame, xlator_t *this, list_for_each_entry (peerinfo, &priv->peers, uuid_list) { GF_ASSERT (peerinfo); + if (!peerinfo->connected) + continue; if ((peerinfo->state.state != GD_FRIEND_STATE_BEFRIENDED) && (glusterd_op_get_op() != GD_OP_SYNC_VOLUME)) continue; @@ -1038,6 +1040,8 @@ glusterd3_1_cluster_unlock (call_frame_t *frame, xlator_t *this, list_for_each_entry (peerinfo, &priv->peers, uuid_list) { GF_ASSERT (peerinfo); + if (!peerinfo->connected) + continue; if ((peerinfo->state.state != GD_FRIEND_STATE_BEFRIENDED) && (glusterd_op_get_op() != GD_OP_SYNC_VOLUME)) continue; @@ -1123,6 +1127,8 @@ glusterd3_1_stage_op (call_frame_t *frame, xlator_t *this, list_for_each_entry (peerinfo, &priv->peers, uuid_list) { GF_ASSERT (peerinfo); + if (!peerinfo->connected) + continue; if ((peerinfo->state.state != GD_FRIEND_STATE_BEFRIENDED) && (glusterd_op_get_op() != GD_OP_SYNC_VOLUME)) continue; @@ -1216,6 +1222,8 @@ glusterd3_1_commit_op (call_frame_t *frame, xlator_t *this, list_for_each_entry (peerinfo, &priv->peers, uuid_list) { GF_ASSERT (peerinfo); + if (!peerinfo->connected) + continue; if ((peerinfo->state.state != GD_FRIEND_STATE_BEFRIENDED) && (glusterd_op_get_op() != GD_OP_SYNC_VOLUME)) continue; |