diff options
author | Sakshi <sabansal@redhat.com> | 2015-05-28 10:49:36 +0530 |
---|---|---|
committer | Atin Mukherjee <amukherj@redhat.com> | 2015-09-22 10:45:34 -0700 |
commit | bdbd092e2caf79a2cfd6cda507af624e9861ae30 (patch) | |
tree | 8413442a15853a0300ab376aa980dcccf3f2d9a6 /xlators/mgmt/glusterd/src/glusterd-brick-ops.c | |
parent | 59557e1c9ca33c997743c0c03cf73c2f470c8bf3 (diff) |
glusterd : check if all bricks are started before performing remove-brick
Change-Id: Ie9e24e037b7a39b239a7badb983504963d664324
BUG: 1225716
Signed-off-by: Sakshi <sabansal@redhat.com>
Reviewed-on: http://review.gluster.org/10954
Tested-by: NetBSD Build System <jenkins@build.gluster.org>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Atin Mukherjee <amukherj@redhat.com>
Diffstat (limited to 'xlators/mgmt/glusterd/src/glusterd-brick-ops.c')
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-brick-ops.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-brick-ops.c b/xlators/mgmt/glusterd/src/glusterd-brick-ops.c index 8b69924f9d7..b14566aa1bb 100644 --- a/xlators/mgmt/glusterd/src/glusterd-brick-ops.c +++ b/xlators/mgmt/glusterd/src/glusterd-brick-ops.c @@ -1748,8 +1748,17 @@ glusterd_remove_brick_validate_bricks (gf1_op_commands cmd, int32_t brick_count, } } - if (glusterd_is_local_brick (THIS, volinfo, brickinfo)) + if (glusterd_is_local_brick (THIS, volinfo, brickinfo)) { + if (cmd == GF_OP_CMD_START && + brickinfo->status != GF_BRICK_STARTED) { + snprintf (msg, sizeof (msg), "Found stopped " + "brick %s", brick); + *errstr = gf_strdup (msg); + ret = -1; + goto out; + } continue; + } rcu_read_lock (); peerinfo = glusterd_peerinfo_find_by_uuid |