diff options
author | Venkatesh Somyajulu <vsomyaju@redhat.com> | 2013-06-19 17:54:31 +0530 |
---|---|---|
committer | Vijay Bellur <vbellur@redhat.com> | 2013-07-04 05:25:31 -0700 |
commit | b3cc22184452824d436903baa62635acee739c50 (patch) | |
tree | b2c96e65f578148c7fe3cec2dd596044667067e1 | |
parent | 98f62a731ca13296b937bfff14d0a2f8dfc49a54 (diff) |
cli: Fix remove brick cli out for wrong volume name
Problem: gluster volume remove-brick command, was not printing the error in
case of volume-name specified is wrong.
Fix: Fix will print error message to indicate that provided volume name is
invalid. Although patch for bug 961669
http://review.gluster.org/#/c/4975/ does print cli-output now, but
still xml is unable to use the response values
Change-Id: I2ee1df86c1e756fb8e93b4d6bbdd102b4f368f87
BUG: 961307
Signed-off-by: Venkatesh Somyajulu <vsomyaju@redhat.com>
Reviewed-on: http://review.gluster.org/4972
Reviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vbellur@redhat.com>
-rw-r--r-- | cli/src/cli-rpc-ops.c | 9 | ||||
-rw-r--r-- | tests/bugs/bug-961307.t | 32 |
2 files changed, 35 insertions, 6 deletions
diff --git a/cli/src/cli-rpc-ops.c b/cli/src/cli-rpc-ops.c index d5256f128c7..5ae4cfbc83f 100644 --- a/cli/src/cli-rpc-ops.c +++ b/cli/src/cli-rpc-ops.c @@ -1976,9 +1976,6 @@ gf_cli_remove_brick_cbk (struct rpc_req *req, struct iovec *iov, if (ret) { gf_log ("cli", GF_LOG_ERROR, "remove-brick-id is not present in dict"); - cli_err ("volume remove-brick %s: failed: %s", cmd_str, - rsp.op_errstr); - goto out; } break; case GF_OP_CMD_COMMIT: @@ -2003,7 +2000,7 @@ gf_cli_remove_brick_cbk (struct rpc_req *req, struct iovec *iov, if (global_state->mode & GLUSTER_MODE_XML) { ret = cli_xml_output_vol_remove_brick (_gf_false, rsp_dict, rsp.op_ret, rsp.op_errno, - rsp.op_errstr); + msg); if (ret) gf_log ("cli", GF_LOG_ERROR, "Error outputting to xml"); @@ -2012,10 +2009,10 @@ gf_cli_remove_brick_cbk (struct rpc_req *req, struct iovec *iov, if (rsp.op_ret) { cli_err ("volume remove-brick %s: failed: %s", cmd_str, - rsp.op_errstr); + msg); } else { cli_out ("volume remove-brick %s: success", cmd_str); - if (GF_OP_CMD_START == cmd) + if (GF_OP_CMD_START == cmd && task_id_str != NULL) cli_out ("ID: %s", task_id_str); } diff --git a/tests/bugs/bug-961307.t b/tests/bugs/bug-961307.t new file mode 100644 index 00000000000..96e93a56f8d --- /dev/null +++ b/tests/bugs/bug-961307.t @@ -0,0 +1,32 @@ +#!/bin/bash + +. $(dirname $0)/../include.rc +. $(dirname $0)/../volume.rc + +cleanup; + +REPLICA=2 + +TEST glusterd +TEST pidof glusterd + +TEST $CLI volume create $V0 replica $REPLICA $H0:$B0/${V0}-00 $H0:$B0/${V0}-01 $H0:$B0/${V0}-10 $H0:$B0/${V0}-11 +TEST $CLI volume start $V0 + +var1=$(gluster volume remove-brick $H0:$B0/${V0}-00 $H0:$B0/${V0}-01 start 2>&1) +var2="volume remove-brick start: failed: Volume $H0:$B0/${V0}-00 does not exist" + + +function compare_string() +{ + val="-1" + if [ "$1" == "$2" ]; then + val="0" + else + val="1" + fi + echo $val +} + +EXPECT 0 compare_string "$var1" "$var2" +cleanup; |