From c8cd488b794d7abb3d37f32a6d8d0a3b365aa46e Mon Sep 17 00:00:00 2001 From: Pranith Kumar K Date: Tue, 31 Mar 2015 23:07:09 +0530 Subject: cluster/ec: Fix dictionary compare function If both dicts are NULL then equal. If one of the dicts is NULL but the other has only ignorable keys then also they are equal. If both dicts are non-null then check if for each non-ignorable key, values are same or not. value_ignore function is used to skip comparing values for the keys which must be present in both the dictionaries but the value could be different. geo-rep's stime xattr doesn't need to be present in list xattr but when getxattr comes on stime xattr even if there aren't enough responses with the xattr we should still give out an answer which is maximum of the stimes available. Change-Id: I8de2ceaa2db785b797f302f585d88e73b154167d BUG: 1207712 Signed-off-by: Pranith Kumar K Reviewed-on: http://review.gluster.org/10078 Tested-by: Gluster Build System Reviewed-by: Xavier Hernandez --- tests/basic/geo-replication/marker-xattrs.t | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'tests') diff --git a/tests/basic/geo-replication/marker-xattrs.t b/tests/basic/geo-replication/marker-xattrs.t index 7061b4532a3..dd5483d7e95 100755 --- a/tests/basic/geo-replication/marker-xattrs.t +++ b/tests/basic/geo-replication/marker-xattrs.t @@ -59,12 +59,16 @@ TEST touch $M0 vol_uuid=$(get_volume_mark $M1) xtime=trusted.glusterfs.$vol_uuid.xtime +stime=trusted.glusterfs.$vol_uuid.stime +stime_val=$(getfattr -e hex -n $xtime $M1 | grep ${xtime}= | cut -f2 -d'=') +TEST "setfattr -n $stime -v $stime_val $B0/${V0}-1" TEST "getfattr -n $xtime $M1 | grep -q ${xtime}=" TEST kill_brick $V0 $H0 $B0/${V0}-0 TEST "getfattr -n $xtime $M1 | grep -q ${xtime}=" +TEST "getfattr -n $stime $M1 | grep -q ${stime}=" TEST getfattr -d -m. -e hex $M1 EXPECT_WITHIN $UMOUNT_TIMEOUT "Y" force_umount $M0 -- cgit