diff options
author | Pranith Kumar K <pkarampu@redhat.com> | 2015-02-13 21:04:22 +0530 |
---|---|---|
committer | Raghavendra Bhat <raghavendra@redhat.com> | 2015-02-22 09:19:16 -0800 |
commit | 21cf6ac8b852a04ded1e5399240292d0795035f6 (patch) | |
tree | 40337b679bd97e5716bdb43f0f25110532fe757c /xlators | |
parent | 58b71c64308e7680b5fc5326ed1aed294f848ecb (diff) |
cluster/afr: Crawl should continue on self-heal failures
Problem:
If self-heal fails on the last entry of readdir response list, index heal
stops.
Fix:
Continue crawl even with partial failures.
PS: Bug seems to exist only on 3.6.2, on master the code is fine
after http://review.gluster.com/9485
Change-Id: Ie39b0d424297e3c95a05cbe72438dfd9a4d5696d
BUG: 1192522
Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
Reviewed-on: http://review.gluster.org/9653
Reviewed-by: Krutika Dhananjay <kdhananj@redhat.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Raghavendra Bhat <raghavendra@redhat.com>
Diffstat (limited to 'xlators')
-rw-r--r-- | xlators/cluster/afr/src/afr-self-heald.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/xlators/cluster/afr/src/afr-self-heald.c b/xlators/cluster/afr/src/afr-self-heald.c index 29f34107481..992ed28b994 100644 --- a/xlators/cluster/afr/src/afr-self-heald.c +++ b/xlators/cluster/afr/src/afr-self-heald.c @@ -479,8 +479,8 @@ afr_shd_index_sweep (struct subvol_healer *healer) if (ret == -ENOENT || ret == -ESTALE) { afr_shd_index_purge (subvol, fd->inode, entry->d_name); - ret = 0; } + ret = 0; } gf_dirent_free (&entries); @@ -1028,8 +1028,7 @@ afr_shd_gather_index_entries (xlator_t *this, int child, dict_t *output) continue; } - ret = afr_shd_dict_add_path (this, output, child, path, - NULL); + afr_shd_dict_add_path (this, output, child, path, NULL); } gf_dirent_free (&entries); |