14f8ab
From 1e619b95e3f03e226fef135bfaeeca9b069eb978 Mon Sep 17 00:00:00 2001
14f8ab
From: Jiffin Tony Thottan <jthottan@redhat.com>
14f8ab
Date: Wed, 14 Mar 2018 12:01:30 +0530
14f8ab
Subject: [PATCH 077/124] glusterd/ganesha : create/remove export file only
14f8ab
 from the node which performs ganesha.enable
14f8ab
14f8ab
As part of volume set ganesha.enable on the ganesha export configuration file will be created/removed
14f8ab
using "create-export-ganesha.sh". This performed from the nodes which are part of ganesha cluster.
14f8ab
But it is not need since the file is saved in shared storage and consumed by the nodes in the ganesha cluster.
14f8ab
14f8ab
Label: DOWNSTREAM ONLY
14f8ab
14f8ab
Upstream Reference :
14f8ab
>patch link : https://review.gluster.org/#/c/19716/
14f8ab
>Change-Id: I2583899972b47d451a90711940293004a3af4690
14f8ab
>BUG: 1555195
14f8ab
>Signed-off-by: Jiffin Tony Thottan <jthottan@redhat.com>
14f8ab
14f8ab
Change-Id: I2583899972b47d451a90711940293004a3af4690
14f8ab
Signed-off-by: Jiffin Tony Thottan <jthottan@redhat.com>
14f8ab
Reviewed-on: https://code.engineering.redhat.com/gerrit/167162
14f8ab
Reviewed-by: Soumya Koduri <skoduri@redhat.com>
14f8ab
Tested-by: RHGS Build Bot <nigelb@redhat.com>
14f8ab
Reviewed-by: Sunil Kumar Heggodu Gopala Acharya <sheggodu@redhat.com>
14f8ab
---
14f8ab
 xlators/mgmt/glusterd/src/glusterd-ganesha.c    | 2 +-
14f8ab
 xlators/mgmt/glusterd/src/glusterd-op-sm.c      | 3 ++-
14f8ab
 xlators/mgmt/glusterd/src/glusterd-volume-ops.c | 2 +-
14f8ab
 3 files changed, 4 insertions(+), 3 deletions(-)
14f8ab
14f8ab
diff --git a/xlators/mgmt/glusterd/src/glusterd-ganesha.c b/xlators/mgmt/glusterd/src/glusterd-ganesha.c
14f8ab
index fe0bffc..ff36476 100644
14f8ab
--- a/xlators/mgmt/glusterd/src/glusterd-ganesha.c
14f8ab
+++ b/xlators/mgmt/glusterd/src/glusterd-ganesha.c
14f8ab
@@ -530,7 +530,7 @@ ganesha_manage_export(dict_t *dict, char *value,
14f8ab
      * Create the export file from the node where ganesha.enable "on"
14f8ab
      * is executed
14f8ab
      * */
14f8ab
-    if (option) {
14f8ab
+    if (option && is_origin_glusterd(dict)) {
14f8ab
         ret = manage_export_config(volname, "on", op_errstr);
14f8ab
         if (ret) {
14f8ab
             gf_msg(this->name, GF_LOG_ERROR, 0, GD_MSG_EXPORT_FILE_CREATE_FAIL,
14f8ab
diff --git a/xlators/mgmt/glusterd/src/glusterd-op-sm.c b/xlators/mgmt/glusterd/src/glusterd-op-sm.c
14f8ab
index 52809a8..10e2d48 100644
14f8ab
--- a/xlators/mgmt/glusterd/src/glusterd-op-sm.c
14f8ab
+++ b/xlators/mgmt/glusterd/src/glusterd-op-sm.c
14f8ab
@@ -2415,7 +2415,8 @@ glusterd_op_reset_volume(dict_t *dict, char **op_rspstr)
14f8ab
     }
14f8ab
 
14f8ab
     if (!strcmp(key, "ganesha.enable") || !strcmp(key, "all")) {
14f8ab
-        if (glusterd_check_ganesha_export(volinfo)) {
14f8ab
+        if (glusterd_check_ganesha_export(volinfo) &&
14f8ab
+            is_origin_glusterd(dict)) {
14f8ab
             ret = manage_export_config(volname, "off", op_rspstr);
14f8ab
             if (ret)
14f8ab
                 gf_msg(this->name, GF_LOG_WARNING, 0, GD_MSG_NFS_GNS_RESET_FAIL,
14f8ab
diff --git a/xlators/mgmt/glusterd/src/glusterd-volume-ops.c b/xlators/mgmt/glusterd/src/glusterd-volume-ops.c
14f8ab
index de4eccb..1ea8ba6 100644
14f8ab
--- a/xlators/mgmt/glusterd/src/glusterd-volume-ops.c
14f8ab
+++ b/xlators/mgmt/glusterd/src/glusterd-volume-ops.c
14f8ab
@@ -2936,7 +2936,7 @@ glusterd_op_delete_volume(dict_t *dict)
14f8ab
         goto out;
14f8ab
     }
14f8ab
 
14f8ab
-    if (glusterd_check_ganesha_export(volinfo)) {
14f8ab
+    if (glusterd_check_ganesha_export(volinfo) && is_origin_glusterd(dict)) {
14f8ab
         ret = manage_export_config(volname, "off", NULL);
14f8ab
         if (ret)
14f8ab
             gf_msg(this->name, GF_LOG_WARNING, 0, 0,
14f8ab
-- 
14f8ab
1.8.3.1
14f8ab