summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorPranith Kumar K <pkarampu@redhat.com>2013-10-07 16:00:59 +0530
committerVijay Bellur <vbellur@redhat.com>2014-02-02 20:26:13 -0800
commit52e98957da62168adcdc33782b027fa35b9d283e (patch)
treef0f5003f7690bb8886e2e259466c4b2cfda97137 /tests
parent540de26e2ef7c45eb0ef6c049844a864542bd38a (diff)
features/marker: Filter quota xattrs on file as well
Problem: Quota contributions of a file/directory are tracked by quota xlator using xattrs on the file. Quota allows these xattrs to be healed as part of metadata self-heal. This leads to wrong quota calculations on this brick after self-heal because quota xattrs don't represent the actual contributions on the brick anymore. Fix: Don't let self-heal of this xattr happen as part of self-heal by filtering quota xattrs on file in listxattr. Change-Id: Iea68a116595ba271e58c6fdcc3dd21c7bb55ebb3 BUG: 1035576 Signed-off-by: Pranith Kumar K <pkarampu@redhat.com> Reviewed-on: http://review.gluster.org/6374 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vbellur@redhat.com> Reviewed-on: http://review.gluster.org/6812
Diffstat (limited to 'tests')
-rw-r--r--tests/bugs/bug-1035576.t1
-rw-r--r--tests/volume.rc7
2 files changed, 7 insertions, 1 deletions
diff --git a/tests/bugs/bug-1035576.t b/tests/bugs/bug-1035576.t
index 52d93dd87df..b742690543c 100644
--- a/tests/bugs/bug-1035576.t
+++ b/tests/bugs/bug-1035576.t
@@ -21,7 +21,6 @@ TEST $CLI volume set $V0 performance.read-ahead off
TEST $CLI volume set $V0 background-self-heal-count 0
TEST $CLI volume set $V0 self-heal-daemon off
TEST $CLI volume quota $V0 enable
-
TEST kill_brick $V0 $H0 $B0/${V0}0
TEST glusterfs --volfile-id=/$V0 --volfile-server=$H0 $M0 --attribute-timeout=0 --entry-timeout=0
cd $M0
diff --git a/tests/volume.rc b/tests/volume.rc
index 5fee3f4caab..2ddb7fc502d 100644
--- a/tests/volume.rc
+++ b/tests/volume.rc
@@ -277,3 +277,10 @@ function get_backend_paths {
getfattr -m . -n trusted.glusterfs.pathinfo $path | tr ' ' '\n' | sed -n 's/<POSIX.*:.*:\(.*\)>.*/\1/p'
}
+
+#Gets the xattr value in hex, also removed 0x in front of the value
+function get_hex_xattr {
+ local key=$1
+ local path=$2
+ getfattr -d -m. -e hex $2 2>/dev/null | grep $1 | cut -f2 -d'=' | cut -f2 -d'x'
+}