X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Ftests%2Fracer.sh;h=a1694d500047d4e25b9749c80d6917db84afd0cb;hb=94bf32e0eee947dba897a17abe58eee4f1d0d4d6;hp=66596ae37b184cab6adb4b4b46e8cc53a3f2eafe;hpb=dc64eb8e2f3e8e9abbaab2762babcdd5c8446c4c;p=fs%2Flustre-release.git diff --git a/lustre/tests/racer.sh b/lustre/tests/racer.sh index 66596ae..a1694d5 100644 --- a/lustre/tests/racer.sh +++ b/lustre/tests/racer.sh @@ -10,53 +10,73 @@ init_test_env $@ init_logging racer=$LUSTRE/tests/racer/racer.sh -echo racer: $racer +echo racer: $racer with $MDSCOUNT MDTs + +if [ "$SLOW" = "no" ]; then + DURATION=${DURATION:-300} +else + DURATION=${DURATION:-900} +fi +MOUNT_2=${MOUNT_2:-"yes"} + +build_test_filter +check_and_setup_lustre CLIENTS=${CLIENTS:-$HOSTNAME} -RACERDIRS=${RACERDIRS:-$DIR} +RACERDIRS=${RACERDIRS:-"$DIR $DIR2"} echo RACERDIRS=$RACERDIRS -for d in ${RACERDIRS}; do - RDIRS="$RDIRS $d/racer" - mkdir -p $d/racer -# lfs setstripe $d/racer -c -1 -done -DURATION=${DURATION:-900} -[ "$SLOW" = "no" ] && DURATION=300 -build_test_filter -check_and_setup_lustre +check_progs_installed $CLIENTS $racer || + { skip_env "$racer not found" && exit 0; } # run racer test_1() { - local rrc=0 - local rc=0 - local clients=${CLIENTS:-$(hostname)} - - check_progs_installed $clients $racer || \ - { skip_env "$racer not found" && return 0; } - - local rpids="" - for rdir in $RDIRS; do - do_nodes $clients "DURATION=$DURATION $racer $rdir $NUM_RACER_THREADS" & - pid=$! - rpids="$rpids $pid" - done - - echo racers pids: $rpids - for pid in $rpids; do - wait $pid - rc=$? - echo "pid=$pid rc=$rc" - if [ $rc != 0 ]; then - rrc=$((rrc + 1)) - fi - done - - return $rrc + local rrc=0 + local rc=0 + local clients=$CLIENTS + local RDIRS + local i + + for d in ${RACERDIRS}; do + is_mounted $d || continue + + RDIRS="$RDIRS $d/racer" + mkdir -p $d/racer + # lfs setstripe $d/racer -c -1 + if [ $MDSCOUNT -ge 2 ]; then + for i in $(seq $((MDSCOUNT - 1))); do + RDIRS="$RDIRS $d/racer$i" + if [ ! -e $d/racer$i ]; then + $LFS mkdir -i $i $d/racer$i || + error "lfs mkdir $i failed" + fi + done + fi + done + + local rpids="" + for rdir in $RDIRS; do + do_nodes $clients "DURATION=$DURATION MDSCOUNT=$MDSCOUNT \ + $racer $rdir $NUM_RACER_THREADS" & + pid=$! + rpids="$rpids $pid" + done + + echo racers pids: $rpids + for pid in $rpids; do + wait $pid + rc=$? + echo "pid=$pid rc=$rc" + if [ $rc != 0 ]; then + rrc=$((rrc + 1)) + fi + done + + return $rrc } run_test 1 "racer on clients: ${CLIENTS:-$(hostname)} DURATION=$DURATION" -complete $(basename $0) $SECONDS +complete $SECONDS check_and_cleanup_lustre exit_status