summaryrefslogtreecommitdiffstats
path: root/xlators/cluster/afr/src/afr-self-heal-common.c
diff options
context:
space:
mode:
authorRichard Wareing <rwareing@fb.com>2015-09-29 15:35:08 -0700
committerShreyas Siravara <sshreyas@fb.com>2017-08-29 22:32:43 +0000
commit24932f2fd323deb4acab4e0c29601d5ca955f602 (patch)
tree1286d069dcec24aab15186ccd89b7ec8ca8dc9c3 /xlators/cluster/afr/src/afr-self-heal-common.c
parent8c50512d129b11778e2fd88c8976a527515546d7 (diff)
cluster/afr: SHD should not use did_discovery code paths
Summary: - Exempt the SHD from the discover code path Test Plan: - prove -v tests/bugs/fb8149516.t - Make rc and canary on offending host (gfsdataswarm048.prn2) Reviewers: moox, dph, sshreyas Reviewed By: sshreyas Differential Revision: https://phabricator.fb.com/D2491694 Change-Id: I5ec3997cf26375e834c3c7c4ea6c174eef957b8b Signed-off-by: Jeff Darcy <jdarcy@fb.com> Reviewed-on: https://review.gluster.org/18141 Tested-by: Jeff Darcy <jeff@pl.atyp.us> CentOS-regression: Gluster Build System <jenkins@build.gluster.org> Smoke: Gluster Build System <jenkins@build.gluster.org> Reviewed-by: Shreyas Siravara <sshreyas@fb.com>
Diffstat (limited to 'xlators/cluster/afr/src/afr-self-heal-common.c')
-rw-r--r--xlators/cluster/afr/src/afr-self-heal-common.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/xlators/cluster/afr/src/afr-self-heal-common.c b/xlators/cluster/afr/src/afr-self-heal-common.c
index 4a5c95477ee..1df3ddde1cb 100644
--- a/xlators/cluster/afr/src/afr-self-heal-common.c
+++ b/xlators/cluster/afr/src/afr-self-heal-common.c
@@ -1891,7 +1891,8 @@ afr_selfheal_unlocked_inspect (call_frame_t *frame, xlator_t *this,
afr_is_metadata_set (this, replies[i].xdata))
*metadata_selfheal = _gf_true;
- if (priv->did_discovery == _gf_false ||
+ if ((!priv->shd.iamshd && AFR_IS_ROOT_GFID (gfid) &&
+ priv->did_discovery == _gf_false) ||
(entry_selfheal &&
afr_is_entry_set (this, replies[i].xdata)))
*entry_selfheal = _gf_true;