From 32101f782552cef7666be7294533c71da821b22c Mon Sep 17 00:00:00 2001 From: Kotresh HR Date: Wed, 20 Apr 2016 23:49:39 +0530 Subject: glusterd/bitrot: Fix bit-rot scrub status Few of the dictionary values were not allocated and set. This patch allocates them and set. Backport of: >Change-Id: Ic61c1209b238e45219793fd8bec92235adfbd013 >BUG: 1329211 >Signed-off-by: Kotresh HR >Reviewed-on: http://review.gluster.org/14120 >Smoke: Gluster Build System >NetBSD-regression: NetBSD Build System >CentOS-regression: Gluster Build System >Reviewed-by: Venky Shankar >Reviewed-by: Atin Mukherjee >Signed-off-by: Kotresh HR Change-Id: Icf52a98a9699c6bd0b2dff159626f87030c76d72 BUG: 1332072 Signed-off-by: Kotresh HR Reviewed-on: http://review.gluster.org/14141 Smoke: Gluster Build System CentOS-regression: Gluster Build System NetBSD-regression: NetBSD Build System Reviewed-by: Venky Shankar --- xlators/mgmt/glusterd/src/glusterd-utils.c | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'xlators') diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c index baa4e3dab3a..7d9333feb7a 100644 --- a/xlators/mgmt/glusterd/src/glusterd-utils.c +++ b/xlators/mgmt/glusterd/src/glusterd-utils.c @@ -8546,7 +8546,6 @@ glusterd_volume_bitrot_scrub_use_rsp_dict (dict_t *aggr, dict_t *rsp_dict) ret = dict_get_str (rsp_dict, key, &node_uuid); if (!ret) { node_uuid_str = gf_strdup (node_uuid); - memset (key, 0, 256); snprintf (key, 256, "node-uuid-%d", src_count+dst_count); ret = dict_set_dynstr (aggr, key, node_uuid_str); @@ -8641,7 +8640,8 @@ glusterd_volume_bitrot_scrub_use_rsp_dict (dict_t *aggr, dict_t *rsp_dict) ret = dict_get_str (rsp_dict, "bitrot_log_file", &bitd_log); if (!ret) { - ret = dict_set_str (aggr, "bitrot_log_file", bitd_log); + ret = dict_set_dynstr_with_alloc (aggr, "bitrot_log_file", + bitd_log); if (ret) { gf_msg_debug (this->name, 0, "Failed to set " "bitrot log file location"); @@ -8651,7 +8651,8 @@ glusterd_volume_bitrot_scrub_use_rsp_dict (dict_t *aggr, dict_t *rsp_dict) ret = dict_get_str (rsp_dict, "scrub_log_file", &scrub_log); if (!ret) { - ret = dict_set_str (aggr, "scrub_log_file", scrub_log); + ret = dict_set_dynstr_with_alloc (aggr, "scrub_log_file", + scrub_log); if (ret) { gf_msg_debug (this->name, 0, "Failed to set " "scrubber log file location"); @@ -8661,7 +8662,8 @@ glusterd_volume_bitrot_scrub_use_rsp_dict (dict_t *aggr, dict_t *rsp_dict) ret = dict_get_str (rsp_dict, "features.scrub-freq", &scrub_freq); if (!ret) { - ret = dict_set_str (aggr, "features.scrub-freq", scrub_freq); + ret = dict_set_dynstr_with_alloc (aggr, "features.scrub-freq", + scrub_freq); if (ret) { gf_msg_debug (this->name, 0, "Failed to set " "scrub-frequency value to dictionary"); @@ -8671,8 +8673,9 @@ glusterd_volume_bitrot_scrub_use_rsp_dict (dict_t *aggr, dict_t *rsp_dict) ret = dict_get_str (rsp_dict, "features.scrub-throttle", &scrub_impact); if (!ret) { - ret = dict_set_str (aggr, "features.scrub-throttle", - scrub_impact); + ret = dict_set_dynstr_with_alloc (aggr, + "features.scrub-throttle", + scrub_impact); if (ret) { gf_msg_debug (this->name, 0, "Failed to set " "scrub-throttle value to dictionary"); @@ -8682,7 +8685,8 @@ glusterd_volume_bitrot_scrub_use_rsp_dict (dict_t *aggr, dict_t *rsp_dict) ret = dict_get_str (rsp_dict, "features.scrub", &scrub_state); if (!ret) { - ret = dict_set_str (aggr, "features.scrub", scrub_state); + ret = dict_set_dynstr_with_alloc (aggr, "features.scrub", + scrub_state); if (ret) { gf_msg_debug (this->name, 0, "Failed to set " "scrub state value to dictionary"); -- cgit