From a144cd20745a03f025920ab81265e150e11b3a0a Mon Sep 17 00:00:00 2001 From: Sheetal Pamecha Date: Sun, 22 Dec 2019 22:52:30 +0530 Subject: ec: change error message for heal commands for disperse volume Currently when we issue a heal statistics or similar commands for disperse volume, it fails with message "Volume is not of type replicate." Adding message "this command is supported for volumes of type replicate" to reflect supportability and better understanding of heal functionality for disperse volumes. fixes: bz#1785998 Change-Id: I9688a9fdf427cb6f657cfd5b8db2f76a6c56f6e2 Signed-off-by: Sheetal Pamecha --- heal/src/glfs-heal.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'heal') diff --git a/heal/src/glfs-heal.c b/heal/src/glfs-heal.c index 20372316edd..7f6de557567 100644 --- a/heal/src/glfs-heal.c +++ b/heal/src/glfs-heal.c @@ -1730,14 +1730,19 @@ main(int argc, char **argv) goto out; } + char *var_str = (heal_op == GF_SHD_OP_INDEX_SUMMARY || + heal_op == GF_SHD_OP_HEAL_SUMMARY) + ? "replicate/disperse" + : "replicate"; + ret = glfsh_validate_volume(top_subvol, heal_op); if (ret < 0) { ret = -EINVAL; - gf_asprintf(&op_errstr, "Volume %s is not of type %s", volname, - (heal_op == GF_SHD_OP_INDEX_SUMMARY || - heal_op == GF_SHD_OP_HEAL_SUMMARY) - ? "replicate/disperse" - : "replicate"); + gf_asprintf(&op_errstr, + "This command is supported " + "for only volumes of %s type. Volume %s " + "is not of type %s", + var_str, volname, var_str); goto out; } rootloc.inode = inode_ref(top_subvol->itable->root); -- cgit