#!/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