You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
93 lines
3.6 KiB
93 lines
3.6 KiB
From 86df0ced1cac0e3c48f6149bb2f5442f8548f89e Mon Sep 17 00:00:00 2001 |
|
From: Sanju Rakonde <srakonde@redhat.com> |
|
Date: Wed, 25 Dec 2019 21:56:32 +0530 |
|
Subject: [PATCH 390/449] glusterd: deafult options after volume reset |
|
|
|
Problem: default option itransport.address-family is disappered |
|
in volume info output after a volume reset. |
|
|
|
Cause: with 3.8.0 onwards volume option transport.address-family |
|
has default value, any volume which is created will have this |
|
option set. So, volume info will show this in its output. But, |
|
with reset volume, this option is not handled. |
|
|
|
Solution: In glusterd_enable_default_options(), we should add this |
|
option along with other default options. This function is called |
|
by glusterd_options_reset() with volume reset command. |
|
|
|
> upstream patch link: https://review.gluster.org/#/c/glusterfs/+/23921/ |
|
> fixes: bz#1786478 |
|
> Change-Id: I58f7aa24cf01f308c4efe6cae748cc3bc8b99b1d |
|
> Signed-off-by: Sanju Rakonde <srakonde@redhat.com> |
|
|
|
BUG: 1781710 |
|
Change-Id: I58f7aa24cf01f308c4efe6cae748cc3bc8b99b1d |
|
Signed-off-by: Sanju Rakonde <srakonde@redhat.com> |
|
Reviewed-on: https://code.engineering.redhat.com/gerrit/202258 |
|
Tested-by: RHGS Build Bot <nigelb@redhat.com> |
|
Reviewed-by: Sunil Kumar Heggodu Gopala Acharya <sheggodu@redhat.com> |
|
--- |
|
tests/bugs/glusterd/optimized-basic-testcases.t | 5 +++++ |
|
xlators/mgmt/glusterd/src/glusterd-utils.c | 23 +++++++++++++++++++++++ |
|
2 files changed, 28 insertions(+) |
|
|
|
diff --git a/tests/bugs/glusterd/optimized-basic-testcases.t b/tests/bugs/glusterd/optimized-basic-testcases.t |
|
index d700b5e..c7e8c32 100644 |
|
--- a/tests/bugs/glusterd/optimized-basic-testcases.t |
|
+++ b/tests/bugs/glusterd/optimized-basic-testcases.t |
|
@@ -69,6 +69,11 @@ TEST pidof glusterd; |
|
TEST $CLI volume create $V0 $H0:$B0/${V0}{1,2}; |
|
EXPECT 'Created' volinfo_field $V0 'Status'; |
|
|
|
+#bug-1786478 - default volume option after volume reset |
|
+addr_family=`volinfo_field $V0 'transport.address-family'` |
|
+TEST $CLI volume reset $V0 |
|
+EXPECT $addr_family volinfo_field $V0 'transport.address-family' |
|
+ |
|
#bug-955588 - uuid validation |
|
|
|
uuid=`grep UUID $GLUSTERD_WORKDIR/glusterd.info | cut -f2 -d=` |
|
diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c |
|
index c92cdf3..6654741 100644 |
|
--- a/xlators/mgmt/glusterd/src/glusterd-utils.c |
|
+++ b/xlators/mgmt/glusterd/src/glusterd-utils.c |
|
@@ -13032,6 +13032,11 @@ glusterd_enable_default_options(glusterd_volinfo_t *volinfo, char *option) |
|
int ret = 0; |
|
xlator_t *this = NULL; |
|
glusterd_conf_t *conf = NULL; |
|
+#ifdef IPV6_DEFAULT |
|
+ char *addr_family = "inet6"; |
|
+#else |
|
+ char *addr_family = "inet"; |
|
+#endif |
|
|
|
this = THIS; |
|
GF_ASSERT(this); |
|
@@ -13109,6 +13114,24 @@ glusterd_enable_default_options(glusterd_volinfo_t *volinfo, char *option) |
|
} |
|
} |
|
} |
|
+ |
|
+ if (conf->op_version >= GD_OP_VERSION_3_9_0) { |
|
+ if (!option || !strcmp("transport.address-family", option)) { |
|
+ if (volinfo->transport_type == GF_TRANSPORT_TCP) { |
|
+ ret = dict_set_dynstr_with_alloc( |
|
+ volinfo->dict, "transport.address-family", addr_family); |
|
+ if (ret) { |
|
+ gf_msg(this->name, GF_LOG_ERROR, errno, |
|
+ GD_MSG_DICT_SET_FAILED, |
|
+ "failed to set transport." |
|
+ "address-family on %s", |
|
+ volinfo->volname); |
|
+ goto out; |
|
+ } |
|
+ } |
|
+ } |
|
+ } |
|
+ |
|
if (conf->op_version >= GD_OP_VERSION_7_0) { |
|
ret = dict_set_dynstr_with_alloc(volinfo->dict, |
|
"storage.fips-mode-rchecksum", "on"); |
|
-- |
|
1.8.3.1 |
|
|
|
|