diff options
author | N Balachandran <nbalacha@redhat.com> | 2018-04-05 21:41:44 +0530 |
---|---|---|
committer | N Balachandran <nbalacha@redhat.com> | 2018-04-13 14:46:46 +0000 |
commit | deb81726437d6a62a4e6b1ebb4dabe394e84446e (patch) | |
tree | c08400c362b09ff3466c8347923f4dce8ee3edf7 /xlators | |
parent | 4b34920026ed89569c868179c2490b85b675cd3b (diff) |
cluster/dht: Wind open to all subvols
dht_opendir should wind the open to all subvols
whether or not local->subvols is set. This is
because dht_readdirp winds the calls to all subvols.
(cherry picked from commit c4251edec654b4e0127577e004923d9729bc323d)
Change-Id: I67a96b06dad14a08967c3721301e88555aa01017
updates: bz#1566822
Signed-off-by: N Balachandran <nbalacha@redhat.com>
Diffstat (limited to 'xlators')
-rw-r--r-- | xlators/cluster/dht/src/dht-common.c | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/xlators/cluster/dht/src/dht-common.c b/xlators/cluster/dht/src/dht-common.c index 93b562ec05d..20353df77f7 100644 --- a/xlators/cluster/dht/src/dht-common.c +++ b/xlators/cluster/dht/src/dht-common.c @@ -6282,16 +6282,11 @@ dht_opendir (call_frame_t *frame, xlator_t *this, loc_t *loc, fd_t *fd, "Failed to set dictionary value : key = %s", conf->link_xattr_name); - if ((conf->defrag && conf->defrag->cmd == GF_DEFRAG_CMD_START_TIER) || - (conf->defrag && conf->defrag->cmd == - GF_DEFRAG_CMD_START_DETACH_TIER) || - (!(conf->local_subvols_cnt) || !conf->defrag)) { - call_count = local->call_cnt = conf->subvolume_cnt; - subvolumes = conf->subvolumes; - } else { - call_count = local->call_cnt = conf->local_subvols_cnt; - subvolumes = conf->local_subvols; - } + /* dht_readdirp will wind to all subvols so open has to be sent to + * all subvols whether or not conf->local_subvols is set */ + + call_count = local->call_cnt = conf->subvolume_cnt; + subvolumes = conf->subvolumes; /* In case of parallel-readdir, the readdir-ahead will be loaded * below dht, in this case, if we want to enable or disable SKIP_DIRs |