diff options
-rw-r--r-- | tests/bugs/glusterd/optimized-basic-testcases.t | 5 | ||||
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-utils.c | 23 |
2 files changed, 28 insertions, 0 deletions
diff --git a/tests/bugs/glusterd/optimized-basic-testcases.t b/tests/bugs/glusterd/optimized-basic-testcases.t index 6fdb463e5d7..b89ca22415e 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 4809e5f1658..fd3b3e9d382 100644 --- a/xlators/mgmt/glusterd/src/glusterd-utils.c +++ b/xlators/mgmt/glusterd/src/glusterd-utils.c @@ -12669,6 +12669,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); @@ -12730,6 +12735,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"); |