diff options
author | Ravishankar N <ravishankar@redhat.com> | 2018-06-14 12:59:06 +0530 |
---|---|---|
committer | jiffin tony Thottan <jthottan@redhat.com> | 2018-07-11 14:03:47 +0000 |
commit | c1758216a39232e5592e0e34999fed48420fc5ac (patch) | |
tree | 7aeacaad1ff1d54ba7dd0d4abc499acf16b1977b /xlators/cluster/afr/src/afr-self-heal-entry.c | |
parent | 83076bc29535810dd596595198e260970847cff6 (diff) |
afr: heal gfids when file is not present on all bricks
Backport of https://review.gluster.org/#/c/20271/ (only change is in .t)
commit 20fa80057eb430fd72b4fa31b9b65598b8ec1265 introduced a regression
wherein if a file is present in only 1 brick of replica *and* doesn't
have a gfid associated with it, it doesn't get healed upon the next
lookup from the client. Fix it.
Change-Id: I7d1111dcb45b1b8b8340a7d02558f05df70aa599
BUG: 1598121
fixes: bz#1598121
Signed-off-by: Ravishankar N <ravishankar@redhat.com>
(cherry picked from commit eb472d82a083883335bc494b87ea175ac43471ff)
Diffstat (limited to 'xlators/cluster/afr/src/afr-self-heal-entry.c')
-rw-r--r-- | xlators/cluster/afr/src/afr-self-heal-entry.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/xlators/cluster/afr/src/afr-self-heal-entry.c b/xlators/cluster/afr/src/afr-self-heal-entry.c index 647dd71911b..f6d3a8ae5cb 100644 --- a/xlators/cluster/afr/src/afr-self-heal-entry.c +++ b/xlators/cluster/afr/src/afr-self-heal-entry.c @@ -187,7 +187,7 @@ __afr_selfheal_heal_dirent (call_frame_t *frame, xlator_t *this, fd_t *fd, if (replies[source].op_ret == 0) { ret = afr_lookup_and_heal_gfid (this, fd->inode, name, - inode, replies, source, + inode, replies, source, sources, &replies[source].poststat.ia_gfid); if (ret) return ret; @@ -320,7 +320,7 @@ __afr_selfheal_merge_dirent (call_frame_t *frame, xlator_t *this, fd_t *fd, } ret = afr_lookup_and_heal_gfid (this, fd->inode, name, inode, replies, - source, + source, sources, &replies[source].poststat.ia_gfid); if (ret) return ret; |