X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;ds=sidebyside;f=lustre%2Ftests%2Fsanity-lmv.sh;h=0a11ed7b7ce39c44c8d6312b34f0b5aa07b36605;hb=0d2a2d3db3c7eaf6268f9a49dfb318768b695fe6;hp=77eaa922890ade284a8c33a50ceb49185cd66837;hpb=11a4ea796e0edea3db95642ff5ef19be2817b244;p=fs%2Flustre-release.git diff --git a/lustre/tests/sanity-lmv.sh b/lustre/tests/sanity-lmv.sh index 77eaa92..0a11ed7 100644 --- a/lustre/tests/sanity-lmv.sh +++ b/lustre/tests/sanity-lmv.sh @@ -18,6 +18,7 @@ ALWAYS_EXCEPT=${ALWAYS_EXCEPT:-""} SRCDIR=`dirname $0` export PATH=$PWD/$SRCDIR:$SRCDIR:$SRCDIR/../utils:$PATH +export SECURITY=${SECURITY:-"null"} TMP=${TMP:-/tmp} FSTYPE=${FSTYPE:-ext3} @@ -39,14 +40,9 @@ SOCKETSERVER=${SOCKETSERVER:-socketserver} SOCKETCLIENT=${SOCKETCLIENT:-socketclient} IOPENTEST1=${IOPENTEST1:-iopentest1} IOPENTEST2=${IOPENTEST2:-iopentest2} +PTLDEBUG=${PTLDEBUG:-0} -if [ $UID -ne 0 ]; then - RUNAS_ID="$UID" - RUNAS="" -else - RUNAS_ID=${RUNAS_ID:-500} - RUNAS=${RUNAS:-"runas -u $RUNAS_ID"} -fi +. krb5_env.sh export NAME=${NAME:-lmv} @@ -92,10 +88,10 @@ check_kernel_version() { } run_one() { - if ! mount | grep -q $DIR; then + if ! cat /proc/mounts | grep -q $DIR; then $START fi - echo -1 >/proc/sys/portals/debug + echo $PTLDEBUG >/proc/sys/portals/debug log "== test $1: $2" export TESTNAME=test_$1 test_$1 || error "test_$1: exit with rc=$?" @@ -180,10 +176,10 @@ fi DIR=${DIR:-$MOUNT} [ -z "`echo $DIR | grep $MOUNT`" ] && echo "$DIR not in $MOUNT" && exit 99 -LOVNAME=`cat /proc/fs/lustre/llite/fs0/lov/common_name` -OSTCOUNT=`cat /proc/fs/lustre/lov/$LOVNAME/numobd` -STRIPECOUNT=`cat /proc/fs/lustre/lov/$LOVNAME/stripecount` -STRIPESIZE=`cat /proc/fs/lustre/lov/$LOVNAME/stripesize` +#LOVNAME=`cat /proc/fs/lustre/llite/fs0/lov/common_name` +#OSTCOUNT=`cat /proc/fs/lustre/lov/$LOVNAME/numobd` +#STRIPECOUNT=`cat /proc/fs/lustre/lov/$LOVNAME/stripecount` +#STRIPESIZE=`cat /proc/fs/lustre/lov/$LOVNAME/stripesize` [ -f $DIR/d52a/foo ] && chattr -a $DIR/d52a/foo [ -f $DIR/d52b/foo ] && chattr -i $DIR/d52b/foo @@ -247,19 +243,23 @@ test_1c() { touch $DIR/1b1/file1 touch $DIR/1b1/file2 - echo "3 files left" + ls $DIR/1b1/ + log "3 files left" rmdir $DIR/1b1 && error rm -f $DIR/1b1/file0 - echo "2 files left" + ls $DIR/1b1/ + log "2 files left" rmdir $DIR/1b1 && error rm -f $DIR/1b1/file1 - echo "1 files left" + ls $DIR/1b1/ + log "1 files left" rmdir $DIR/1b1 && error rm -f $DIR/1b1/file2 - echo "0 files left" + ls $DIR/1b1/ + log "0 files left" rmdir $DIR/1b1 || error } run_test 1c " remove splitted cross-node dir =============================" @@ -277,6 +277,65 @@ test_2a() { } run_test 2a " list splitted dir =============================" +test_2b() { + mkdir $DIR/2b1 || error + createmany -o $DIR/2b1/f 5000 + $CLEAN + $START + statmany -l $DIR/2b1/f 5000 5000 || error + statmany -s $DIR/2b1/f 5000 5000 || error + rm -rf $DIR/2b1 || error +} +run_test 2b " list splitted dir after remount =============================" + +test_3a() { + mkdir $DIR/3a0 || error + for i in `seq 100`; do + mkdir $DIR/3a0/d${i} || error + done + createmany -o $DIR/3a0/f 5000 || error + rm -rf $DIR/3a0 || error +} +run_test 3a " dir splitting with cross-ref =============================" + +test_3b() { + mkdir $DIR/3b1 || error + createmany -m $DIR/3b1/f 5000 || error + rm -rf $DIR/3b1 || error +} +run_test 3b " dir splitting via createmany -m =============================" + +test_3c() { + mkdir $DIR/3c1 || error + echo "MDS nodes: $MDSCOUNT" + for j in `seq 3`; do + for i in `seq 10`; do + $LFS dirstripe $DIR/3c1/d-${j}-${i} $j || error + createmany -m $DIR/3c1/d-${j}-${i}/m 200 || error + createmany -o $DIR/3c1/d-${j}-${i}/o 200 || error + done + done + rm -rf $DIR/3c1 || error +} + +run_test 3c " dir splitting via lfs stripe =============================" + +test_4a() { + let rr=0 + while let "rr < 33000"; do + if let "rr % 2000 == 0"; then + echo "$rr" + fi + mkdir $DIR/4a1 || error + rm -rf $DIR/4a1 + let "rr = rr + 1" + done +} + +## this test is very time-consuming, don't run it by default +#run_test 4a " FIDS/ nlink overflow test =============================" + + TMPDIR=$OLDTMPDIR TMP=$OLDTMP HOME=$OLDHOME