diff options
Diffstat (limited to 'cli')
-rw-r--r-- | cli/src/cli-rpc-ops.c | 75 |
1 files changed, 41 insertions, 34 deletions
diff --git a/cli/src/cli-rpc-ops.c b/cli/src/cli-rpc-ops.c index 434e9a6b13c..48c1b971820 100644 --- a/cli/src/cli-rpc-ops.c +++ b/cli/src/cli-rpc-ops.c @@ -136,41 +136,48 @@ gf_cli3_1_probe_cbk (struct rpc_req *req, struct iovec *iov, } if (rsp.op_ret) { - switch (rsp.op_errno) { - case GF_PROBE_ANOTHER_CLUSTER: - snprintf (msg, sizeof (msg), - "%s is already part of another" - " cluster", rsp.hostname); - break; - case GF_PROBE_VOLUME_CONFLICT: - snprintf (msg, sizeof (msg), - "Atleast one volume on %s conflicts " - "with existing volumes in the " - "cluster", rsp.hostname); - break; - case GF_PROBE_UNKNOWN_PEER: - snprintf (msg, sizeof (msg), - "%s responded with 'unknown peer'" - " error, this could happen if %s " - "doesn't have localhost in its peer" - " database", rsp.hostname, - rsp.hostname); - break; - case GF_PROBE_ADD_FAILED: - snprintf (msg, sizeof (msg), - "Failed to add peer information " - "on %s" , rsp.hostname); - break; - - default: - snprintf (msg, sizeof (msg), - "Probe unsuccessful\nProbe returned " - "with unknown errno %d", - rsp.op_errno); - break; + if (rsp.op_errstr && (strlen (rsp.op_errstr) > 0)) { + snprintf (msg, sizeof (msg), "%s", rsp.op_errstr); + } else { + switch (rsp.op_errno) { + case GF_PROBE_ANOTHER_CLUSTER: + snprintf (msg, sizeof (msg), + "%s is already part of " + "another cluster", + rsp.hostname); + break; + case GF_PROBE_VOLUME_CONFLICT: + snprintf (msg, sizeof (msg), + "Atleast one volume on %s " + "conflicts with existing " + "volumes in the cluster", + rsp.hostname); + break; + case GF_PROBE_UNKNOWN_PEER: + snprintf (msg, sizeof (msg), + "%s responded with 'unknown " + "peer' error, this could " + "happen if %s doesn't have " + "localhost in its peer " + "database", rsp.hostname, + rsp.hostname); + break; + case GF_PROBE_ADD_FAILED: + snprintf (msg, sizeof (msg), + "Failed to add peer " + "information on %s" , + rsp.hostname); + break; + + default: + snprintf (msg, sizeof (msg), + "Probe unsuccessful\nProbe " + "returned with unknown errno " + "%d", rsp.op_errno); + break; + } } - gf_log ("glusterd",GF_LOG_ERROR,"Probe failed with op_ret %d" - " and op_errno %d", rsp.op_ret, rsp.op_errno); + gf_log ("cli", GF_LOG_ERROR, "%s", msg); } #if (HAVE_LIB_XML) |