summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-ganesha.c2
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-volume-ops.c8
2 files changed, 9 insertions, 1 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-ganesha.c b/xlators/mgmt/glusterd/src/glusterd-ganesha.c
index f7b7f1371e5..2e62f9d7ba1 100644
--- a/xlators/mgmt/glusterd/src/glusterd-ganesha.c
+++ b/xlators/mgmt/glusterd/src/glusterd-ganesha.c
@@ -464,7 +464,7 @@ manage_export_config (char *volname, char *value, char **op_errstr)
CONFDIR, value, volname, NULL);
ret = runner_run(&runner);
- if (ret)
+ if (ret && !(*op_errstr))
gf_asprintf (op_errstr, "Failed to create"
" NFS-Ganesha export config file.");
diff --git a/xlators/mgmt/glusterd/src/glusterd-volume-ops.c b/xlators/mgmt/glusterd/src/glusterd-volume-ops.c
index ad5fe909578..96b9aaf93d5 100644
--- a/xlators/mgmt/glusterd/src/glusterd-volume-ops.c
+++ b/xlators/mgmt/glusterd/src/glusterd-volume-ops.c
@@ -2823,6 +2823,14 @@ glusterd_op_delete_volume (dict_t *dict)
if (ret)
goto out;
+ if (glusterd_check_ganesha_export (volinfo)) {
+ ret = manage_export_config (volname, "off", NULL);
+ if (ret)
+ gf_msg (this->name, GF_LOG_WARNING, 0, 0,
+ "Could not delete ganesha export conf file "
+ "for %s", volname);
+ }
+
ret = glusterd_delete_volume (volinfo);
out:
gf_msg_debug (this->name, 0, "returning %d", ret);