From 140e9756a569efd02ea970cb484d6f1a7c3da688 Mon Sep 17 00:00:00 2001 From: shishir gowda Date: Thu, 7 Mar 2013 19:41:33 +0530 Subject: cluster/distribute: Fix layout overlaps due to spread-count in selfheal path We needed to zero out the layout range, before we re-calculate the range. When spread-count is issued, we would end up with stale ranges in the layout. Replaced dht_selfheal_dir_xattr with dht_fix_dir_xattr, which correctly resets the un-used (after re-cal) layouts. Change-Id: I1a900d15df07335f59356bd23182ccec34381ab2 BUG: 884455 Signed-off-by: shishir gowda Reviewed-on: http://review.gluster.org/4647 Reviewed-by: Amar Tumballi Tested-by: Gluster Build System Reviewed-by: Jeff Darcy --- tests/bugs/bug-884455.t | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) mode change 100644 => 100755 tests/bugs/bug-884455.t (limited to 'tests/bugs') diff --git a/tests/bugs/bug-884455.t b/tests/bugs/bug-884455.t old mode 100644 new mode 100755 index e5b78226..c193cd8a --- a/tests/bugs/bug-884455.t +++ b/tests/bugs/bug-884455.t @@ -1,6 +1,7 @@ #!/bin/bash . $(dirname $0)/../include.rc +. $(dirname $0)/../dht.rc cleanup; @@ -54,13 +55,18 @@ TEST $CLI volume start $V0 ## Mount FUSE TEST glusterfs -s $H0 --volfile-id $V0 $M0; -TEST mkdir $M0/dir{1..10}; +TEST mkdir $M0/dir{1..10} 2>/dev/null; ## Add-brick n run rebalance to force re-write of layout TEST $CLI volume add-brick $V0 $H0:$B0/${V0}2 sleep 5; + +## trigger dir self heal on client +TEST ls -l $M0 2>/dev/null; + TEST $CLI volume rebalance $V0 start force -sleep 30; + +EXPECT_WITHIN 15 "0" rebalance_completed ## check for layout overlaps. EXPECT "0" get_layout $B0/${V0}0 $B0/${V0}1 $B0/${V0}2 -- cgit