glusterfs/tests/features/nuke.t
Amar Tumballi d4770602e0 dht: utilize the framework to pass-through xlator tasks
Also fixes the issue caused due to not converting back the fn function
to after getting its address. We wanted the value of the field, not
the address of the pt_fop field.

With this patch, DHT will always be started in pass-through
mode if the number of subvols is just 1.

Fixes some tests to make sure DHT is in full config (ie, subvols > 1).
  - increased timeout of brick-mux test as it was bordering on 300 seconds.
  - Also change the volume type to supported 'replica 3' from 'replica 2'.
  - also no DHT tests should assume presence of DHT when there is
    just 1 brick in volume

Credits: Nithya B <nbalacha@redhat.com>

fixes: #405
Change-Id: I8e55239ce58d6ac6ae1901e2e384be1ecbd33d6e
Signed-off-by: Amar Tumballi <amarts@redhat.com>
2018-09-19 04:26:55 +00:00

42 lines
855 B
Bash
Executable File

#!/bin/bash
. $(dirname $0)/../include.rc
create_files () {
mkdir $1
for i in $(seq 0 99); do
mkdir $1/dir$i
for j in $(seq 0 99); do
touch $1/dir$i/file$j
done
done
}
count_files () {
ls $1 | wc -l
}
LANDFILL=$B0/${V0}1/.glusterfs/landfill
TEST glusterd
TEST $CLI volume create $V0 $H0:$B0/${V0}{1,2}
TEST $CLI volume start $V0
TEST $GFS -s $H0 --volfile-id $V0 $M0
TEST create_files $M0/foo
TEST [ $(count_files $LANDFILL) = "0" ]
# This should immediately send the whole directory to the landfill.
TEST setfattr -n glusterfs.dht.nuke -v trinity $M0/foo
# Make sure the directory's not visible on the mountpoint, and is visible in
# the brick's landfill.
TEST ! ls $M0/foo
TEST [ $(count_files $LANDFILL) = "1" ]
# Make sure the janitor thread cleans it up in a timely fashion.
EXPECT_WITHIN 60 "0" count_files $LANDFILL
cleanup