From d9db4a8ff300012eee87f31d73e303862d2de9b6 Mon Sep 17 00:00:00 2001 From: "Bala.FA" Date: Thu, 26 Sep 2013 08:09:35 +0530 Subject: cli: add node uuid in rebalance and remove brick status xml output This patch adds node uuid in rebalance/remove-brick status xml output. Output XML will look like 0 0 3 1 localhost ==>> 883626f8-4d29-4d02-8c5d-c9f48c5b2445 0 0 0 0 3 completed 0 0 0 0 3 completed Change-Id: I5a1d4f9043b33b9e88150647a243ddb16154e843 BUG: 1012296 Signed-off-by: Bala.FA Reviewed-on: http://review.gluster.org/6005 Reviewed-by: Kaushal M Tested-by: Gluster Build System --- cli/src/cli-rpc-ops.c | 20 ++++++++++---------- cli/src/cli-xml-output.c | 12 +++++++++++- 2 files changed, 21 insertions(+), 11 deletions(-) (limited to 'cli/src') diff --git a/cli/src/cli-rpc-ops.c b/cli/src/cli-rpc-ops.c index fe3db41b6..f9605c104 100644 --- a/cli/src/cli-rpc-ops.c +++ b/cli/src/cli-rpc-ops.c @@ -1213,7 +1213,7 @@ gf_cli_defrag_volume_cbk (struct rpc_req *req, struct iovec *iov, char msg[1024] = {0,}; gf_defrag_status_t status_rcd = GF_DEFRAG_STATUS_NOT_STARTED; int32_t counter = 0; - char *node_uuid = NULL; + char *node_name = NULL; char key[256] = {0,}; int32_t i = 1; uint64_t failures = 0; @@ -1345,11 +1345,11 @@ gf_cli_defrag_volume_cbk (struct rpc_req *req, struct iovec *iov, "-----------", "-----------", "-----------", "-----------", "-----------", "------------", "--------------"); do { - snprintf (key, 256, "node-uuid-%d", i); - ret = dict_get_str (dict, key, &node_uuid); + snprintf (key, 256, "node-name-%d", i); + ret = dict_get_str (dict, key, &node_name); if (ret) gf_log (frame->this->name, GF_LOG_TRACE, - "failed to get node-uuid"); + "failed to get node-name"); memset (key, 0, 256); snprintf (key, 256, "files-%d", i); @@ -1402,7 +1402,7 @@ gf_cli_defrag_volume_cbk (struct rpc_req *req, struct iovec *iov, status = cli_vol_task_status_str[status_rcd]; size_str = gf_uint64_2human_readable(size); cli_out ("%40s %16"PRIu64 " %13s" " %13"PRIu64 " %13"PRIu64 - " %13"PRIu64 " %20s %18.2f", node_uuid, files, + " %13"PRIu64 " %20s %18.2f", node_name, files, size_str, lookup, failures, skipped, status, elapsed); GF_FREE(size_str); @@ -1716,7 +1716,7 @@ gf_cli3_remove_brick_status_cbk (struct rpc_req *req, struct iovec *iov, char key[256] = {0,}; int32_t i = 1; int32_t counter = 0; - char *node_uuid = 0; + char *node_name = 0; gf_defrag_status_t status_rcd = GF_DEFRAG_STATUS_NOT_STARTED; uint64_t failures = 0; uint64_t skipped = 0; @@ -1828,11 +1828,11 @@ xml_output: "-----------","------------", "--------------"); do { - snprintf (key, 256, "node-uuid-%d", i); - ret = dict_get_str (dict, key, &node_uuid); + snprintf (key, 256, "node-name-%d", i); + ret = dict_get_str (dict, key, &node_name); if (ret) gf_log (frame->this->name, GF_LOG_TRACE, - "failed to get node-uuid"); + "failed to get node-name"); memset (key, 0, 256); snprintf (key, 256, "files-%d", i); @@ -1904,7 +1904,7 @@ xml_output: if (strcmp (status, "not started")) { cli_out ("%40s %16"PRIu64 " %13s" " %13"PRIu64 " %13" - PRIu64 " %13"PRIu64 " %14s %16.2f", node_uuid, + PRIu64 " %13"PRIu64 " %14s %16.2f", node_name, files, size_str, lookup, failures, skipped, status, elapsed); } diff --git a/cli/src/cli-xml-output.c b/cli/src/cli-xml-output.c index cb42e303d..6cc734a18 100644 --- a/cli/src/cli-xml-output.c +++ b/cli/src/cli-xml-output.c @@ -2989,6 +2989,7 @@ cli_xml_output_vol_rebalance_status (xmlTextWriterPtr writer, dict_t *dict, int ret = -1; int count = 0; char *node_name = NULL; + char *node_uuid = NULL; uint64_t files = 0; uint64_t size = 0; uint64_t lookups = 0; @@ -3026,13 +3027,22 @@ cli_xml_output_vol_rebalance_status (xmlTextWriterPtr writer, dict_t *dict, XML_RET_CHECK_AND_GOTO (ret, out); memset (key, 0, sizeof (key)); - snprintf (key, sizeof (key), "node-uuid-%d", i); + snprintf (key, sizeof (key), "node-name-%d", i); ret = dict_get_str (dict, key, &node_name); if (ret) goto out; ret = xmlTextWriterWriteFormatElement (writer, (xmlChar *)"nodeName", "%s", node_name); + + memset (key, 0, sizeof (key)); + snprintf (key, sizeof (key), "node-uuid-%d", i); + ret = dict_get_str (dict, key, &node_uuid); + if (ret) + goto out; + ret = xmlTextWriterWriteFormatElement (writer, + (xmlChar *)"id", + "%s", node_uuid); XML_RET_CHECK_AND_GOTO (ret, out); memset (key, 0, sizeof (key)); -- cgit