summaryrefslogtreecommitdiff
path: root/0089-glusterd-gNFS-On-post-upgrade-to-3.2-disable-gNFS-fo.patch
diff options
context:
space:
mode:
Diffstat (limited to '0089-glusterd-gNFS-On-post-upgrade-to-3.2-disable-gNFS-fo.patch')
-rw-r--r--0089-glusterd-gNFS-On-post-upgrade-to-3.2-disable-gNFS-fo.patch85
1 files changed, 85 insertions, 0 deletions
diff --git a/0089-glusterd-gNFS-On-post-upgrade-to-3.2-disable-gNFS-fo.patch b/0089-glusterd-gNFS-On-post-upgrade-to-3.2-disable-gNFS-fo.patch
new file mode 100644
index 0000000..6bdb7fc
--- /dev/null
+++ b/0089-glusterd-gNFS-On-post-upgrade-to-3.2-disable-gNFS-fo.patch
@@ -0,0 +1,85 @@
+From 8ba7e04362019ea2d0e80e67eb214d53dca58774 Mon Sep 17 00:00:00 2001
+From: Jiffin Tony Thottan <jthottan@redhat.com>
+Date: Thu, 17 Nov 2016 12:44:38 +0530
+Subject: [PATCH 089/124] glusterd/gNFS : On post upgrade to 3.2, disable gNFS
+ for all volumes
+
+Currently on 3.2 gNFS is dsiabled for newly created volumes or old volumes
+with default value. There will be volumes which have explicitly turn off
+nfs.disable option. This change disable gNFS even for that volume as well.
+
+label : DOWNSTREAM ONLY
+
+Change-Id: I4ddeb23690271034b0bbb3fc50b359350b5eae87
+Signed-off-by: Jiffin Tony Thottan <jthottan@redhat.com>
+Reviewed-on: https://code.engineering.redhat.com/gerrit/90425
+Reviewed-by: Atin Mukherjee <amukherj@redhat.com>
+Tested-by: Atin Mukherjee <amukherj@redhat.com>
+Signed-off-by: Jiffin Tony Thottan <jthottan@redhat.com>
+Reviewed-on: https://code.engineering.redhat.com/gerrit/167573
+Tested-by: RHGS Build Bot <nigelb@redhat.com>
+Reviewed-by: Soumya Koduri <skoduri@redhat.com>
+---
+ xlators/mgmt/glusterd/src/glusterd-op-sm.c | 43 ++++++++++++++++++------------
+ 1 file changed, 26 insertions(+), 17 deletions(-)
+
+diff --git a/xlators/mgmt/glusterd/src/glusterd-op-sm.c b/xlators/mgmt/glusterd/src/glusterd-op-sm.c
+index 10e2d48..06ea8cf 100644
+--- a/xlators/mgmt/glusterd/src/glusterd-op-sm.c
++++ b/xlators/mgmt/glusterd/src/glusterd-op-sm.c
+@@ -2501,26 +2501,35 @@ glusterd_update_volumes_dict(glusterd_volinfo_t *volinfo)
+ GF_VALIDATE_OR_GOTO(this->name, conf, out);
+
+ /* 3.9.0 onwards gNFS will be disabled by default. In case of an upgrade
+- * from anything below than 3.9.0 to 3.9.x the volume's dictionary will
+- * not have 'nfs.disable' key set which means the same will not be set
+- * to on until explicitly done. setnfs.disable to 'on' at op-version
+- * bump up flow is the ideal way here. The same is also applicable for
+- * transport.address-family where if the transport type is set to tcp
+- * then transport.address-family is defaulted to 'inet'.
++ * from anything below than 3.9.0 to 3.9.x, the value for nfs.disable is
++ * set to 'on' for all volumes even if it is explicitly set to 'off' in
++ * previous version. This change is only applicable to downstream code.
++ * Setting nfs.disable to 'on' at op-version bump up flow is the ideal
++ * way here. The same is also applicable for transport.address-family
++ * where if the transport type is set to tcp then transport.address-family
++ * is defaulted to 'inet'.
+ */
+ if (conf->op_version >= GD_OP_VERSION_3_9_0) {
+- if (dict_get_str_boolean(volinfo->dict, NFS_DISABLE_MAP_KEY, 1)) {
+- ret = dict_set_dynstr_with_alloc(volinfo->dict, NFS_DISABLE_MAP_KEY,
+- "on");
+- if (ret) {
+- gf_msg(this->name, GF_LOG_ERROR, errno, GD_MSG_DICT_SET_FAILED,
+- "Failed to set "
+- "option ' NFS_DISABLE_MAP_KEY ' on "
+- "volume %s",
+- volinfo->volname);
+- goto out;
+- }
++ if (!(dict_get_str_boolean(volinfo->dict, NFS_DISABLE_MAP_KEY, 0))) {
++ gf_msg(this->name, GF_LOG_INFO, 0, 0,
++ "Gluster NFS is"
++ " being deprecated in favor of NFS-Ganesha, "
++ "hence setting nfs.disable to 'on' for volume "
++ "%s. Please re-enable it if requires",
++ volinfo->volname);
++ }
++
++ ret = dict_set_dynstr_with_alloc(volinfo->dict, NFS_DISABLE_MAP_KEY,
++ "on");
++ if (ret) {
++ gf_msg(this->name, GF_LOG_ERROR, errno, GD_MSG_DICT_SET_FAILED,
++ "Failed to set "
++ "option ' NFS_DISABLE_MAP_KEY ' on "
++ "volume %s",
++ volinfo->volname);
++ goto out;
+ }
++
+ ret = dict_get_strn(volinfo->dict, "transport.address-family",
+ SLEN("transport.address-family"),
+ &address_family_str);
+--
+1.8.3.1
+