summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--xlators/cluster/afr/src/afr-common.c1
-rw-r--r--xlators/cluster/afr/src/afr-self-heal-common.c1
-rw-r--r--xlators/cluster/afr/src/afr-self-heal-data.c2
3 files changed, 3 insertions, 1 deletions
diff --git a/xlators/cluster/afr/src/afr-common.c b/xlators/cluster/afr/src/afr-common.c
index 80e5c043e..f0fd6ffd0 100644
--- a/xlators/cluster/afr/src/afr-common.c
+++ b/xlators/cluster/afr/src/afr-common.c
@@ -924,7 +924,6 @@ afr_detect_self_heal_by_lookup_status (afr_local_t *local, xlator_t *this)
IA_ISREG (local->cont.lookup.inode->ia_type)) {
local->self_heal.need_data_self_heal = _gf_true;
local->self_heal.need_gfid_self_heal = _gf_true;
- local->self_heal.need_missing_entry_self_heal = _gf_true;
gf_log (this->name, GF_LOG_WARNING,
"split brain detected during lookup of %s.",
local->loc.path);
diff --git a/xlators/cluster/afr/src/afr-self-heal-common.c b/xlators/cluster/afr/src/afr-self-heal-common.c
index 068992650..3987325b8 100644
--- a/xlators/cluster/afr/src/afr-self-heal-common.c
+++ b/xlators/cluster/afr/src/afr-self-heal-common.c
@@ -2254,6 +2254,7 @@ afr_self_heal (call_frame_t *frame, xlator_t *this, inode_t *inode)
sh->orig_frame = frame;
sh->inode = inode_ref (inode);
+ sh_local->govinda_gOvinda = afr_is_split_brain (this, sh->inode);
sh->completion_cbk = afr_self_heal_completion_cbk;
diff --git a/xlators/cluster/afr/src/afr-self-heal-data.c b/xlators/cluster/afr/src/afr-self-heal-data.c
index 3762a2742..b4d34f2f4 100644
--- a/xlators/cluster/afr/src/afr-self-heal-data.c
+++ b/xlators/cluster/afr/src/afr-self-heal-data.c
@@ -603,6 +603,7 @@ afr_sh_data_fix (call_frame_t *frame, xlator_t *this)
"No self-heal needed for %s",
local->loc.path);
+ local->govinda_gOvinda = 0;
afr_sh_data_finish (frame, this);
return 0;
}
@@ -635,6 +636,7 @@ afr_sh_data_fix (call_frame_t *frame, xlator_t *this)
return 0;
}
+ local->govinda_gOvinda = 0;
source = afr_sh_select_source (sh->sources, priv->child_count);
if (source == -1) {