From 21cf6ac8b852a04ded1e5399240292d0795035f6 Mon Sep 17 00:00:00 2001 From: Pranith Kumar K Date: Fri, 13 Feb 2015 21:04:22 +0530 Subject: 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 Reviewed-on: http://review.gluster.org/9653 Reviewed-by: Krutika Dhananjay Tested-by: Gluster Build System Reviewed-by: Raghavendra Bhat --- xlators/cluster/afr/src/afr-self-heald.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'xlators') 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); -- cgit