From 5907d0b4d097cc625c7205963197d9b7e9b40573 Mon Sep 17 00:00:00 2001 From: Pranith Kumar K Date: Thu, 26 Nov 2015 10:27:37 +0530 Subject: cluster/afr: change data self-heal size check for arbiter Size mismatch should consider that arbiter brick will have zero size file to prevent data self-heal to spuriously trigger/assuming need of self-heals. >Change-Id: I179775d604236b9c8abfa360657abbb36abae829 >BUG: 1285634 >Signed-off-by: Pranith Kumar K >Reviewed-on: http://review.gluster.org/12755 >Reviewed-by: Ravishankar N >Tested-by: Gluster Build System >Tested-by: NetBSD Build System >(cherry picked from commit 8d2594d77127ba7ea07a0d68afca0939e1817e39) Change-Id: I90243c01d6d83f46475c975a9bd34d9de84b87da BUG: 1283956 Signed-off-by: Pranith Kumar K Reviewed-on: http://review.gluster.org/12768 Smoke: Gluster Build System NetBSD-regression: NetBSD Build System CentOS-regression: Gluster Build System --- xlators/cluster/afr/src/afr-self-heal-data.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/xlators/cluster/afr/src/afr-self-heal-data.c b/xlators/cluster/afr/src/afr-self-heal-data.c index 429f3593bfc..e04b6575e60 100644 --- a/xlators/cluster/afr/src/afr-self-heal-data.c +++ b/xlators/cluster/afr/src/afr-self-heal-data.c @@ -488,6 +488,10 @@ afr_does_size_mismatch (xlator_t *this, unsigned char *sources, if (!sources[i]) continue; + if (AFR_IS_ARBITER_BRICK (priv, i) && + (replies[i].poststat.ia_size == 0)) + continue; + if (!min) min = &replies[i].poststat; -- cgit