From e0c07e6474956bc90449f36e4cc953dfe35a6fa4 Mon Sep 17 00:00:00 2001 From: Raghavendra G Date: Mon, 2 Dec 2013 09:32:53 +0530 Subject: features/quota: remove in-memory accounting of files in enforcer Accounting was done in enforcer (though marker is the ultimate source of truth) to offset cached directory size becoming stale. However, with enforcer being moved to brick we can no longer maintain correct cluster wide size for a directory. Hence removing accounting code from enforcer. Change-Id: I5ea94234da4da85ed5f5ced1354d8de3454b3fcb BUG: 969461 Signed-off-by: Raghavendra G Reviewed-on: http://review.gluster.org/6434 Tested-by: Gluster Build System Reviewed-by: Vijay Bellur Reviewed-on: http://review.gluster.org/6818 --- tests/bugs/bug-1023974.t | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 tests/bugs/bug-1023974.t (limited to 'tests') diff --git a/tests/bugs/bug-1023974.t b/tests/bugs/bug-1023974.t new file mode 100644 index 00000000000..06d33c12f7f --- /dev/null +++ b/tests/bugs/bug-1023974.t @@ -0,0 +1,35 @@ +#!/bin/bash + +# This regression test tries to ensure renaming a directory with content, and +# no limit set, is accounted properly, when moved into a directory with quota +# limit set. + +. $(dirname $0)/../include.rc + +cleanup; + +TEST glusterd +TEST pidof glusterd; +TEST $CLI volume info; + +TEST $CLI volume create $V0 replica 2 $H0:$B0/${V0}{1,2,3,4,5,6}; +TEST $CLI volume start $V0; + +TEST $CLI volume quota $V0 enable; + +TEST glusterfs --volfile-id=$V0 --volfile-server=$H0 $M0; + +TEST mkdir -p $M0/1/2; +TEST $CLI volume quota $V0 limit-usage /1/2 100MB 70%; +TEST $CLI volume quota $V0 hard-timeout 0 +TEST $CLI volume quota $V0 soft-timeout 0 + +#The corresponding write(3) should fail with EDQUOT ("Disk quota exceeded") +TEST ! dd if=/dev/urandom of=$M0/1/2/file bs=1M count=102; +TEST mkdir $M0/1/3 -p; +TEST dd if=/dev/urandom of=$M0/1/3/file bs=1M count=102; + +#The corresponding rename(3) should fail with EDQUOT ("Disk quota exceeded") +TEST ! mv $M0/1/3/ $M0/1/2/3_mvd; + +cleanup; -- cgit