From: Elena Gryaznova Date: Wed, 31 May 2023 19:42:57 +0000 (+0300) Subject: LU-16521 tests: allow + separator for racer X-Git-Tag: 2.15.59~155 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=refs%2Fchanges%2F66%2F49866%2F10;p=fs%2Flustre-release.git LU-16521 tests: allow + separator for racer The Test-Parameters: line parses ',' even with quotes, so it cannot be used as a separator in Autotest for RACER_PROGS and RACER_EXTRA. Allow both ',' and '+' as a separator for both RACER_PROGS and RACER_EXTRA tasks so specific racer tasks can be run. Do not always enable dir_remote and dir_migrate if RACER_PROGS set. Test-Parameters: trivial testlist=racer env=RACER_PROGS=file_rename+file_truncate,RACER_EXTRA=file_create:5+dir_create:5+dir_remote:5 Fixes: 6d9e74580e ("LU-14274 tests: enhance racer to set extra layout") Signed-off-by: Elena Gryaznova HPE-bug-id: LUS-11466 Change-Id: I3f3b4da6f76ccfac2680068184dc4714187a9a4d Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/49866 Reviewed-by: Andreas Dilger Reviewed-by: Alex Deiter Reviewed-by: Oleg Drokin Tested-by: jenkins Tested-by: Maloo --- diff --git a/lustre/tests/racer/racer.sh b/lustre/tests/racer/racer.sh index 23cd33b..45582bb 100755 --- a/lustre/tests/racer/racer.sh +++ b/lustre/tests/racer/racer.sh @@ -12,13 +12,25 @@ RACER_MAX_CLEANUP_WAIT=${RACER_MAX_CLEANUP_WAIT:-$DURATION} mkdir -p $DIR -RACER_PROGS=${RACER_PROGS:-"file_create dir_create file_rm file_rename \ -file_link file_symlink file_list file_concat file_exec file_chown \ -file_chmod file_mknod file_truncate file_delxattr file_getxattr \ -file_setxattr"} +if [[ -z "$RACER_PROGS" ]]; then + RACER_PROGS="file_create dir_create file_rm file_rename file_link" + RACER_PROGS+=" file_symlink file_list file_concat file_exec file_chown" + RACER_PROGS+=" file_chmod file_mknod file_truncate file_delxattr" + RACER_PROGS+=" file_getxattr file_setxattr" + + if $RACER_ENABLE_REMOTE_DIRS || $RACER_ENABLE_STRIPED_DIRS; then + RACER_PROGS+=" dir_remote" + fi + + if $RACER_ENABLE_MIGRATION; then + RACER_PROGS+=" dir_migrate" + fi +fi +RACER_PROGS=${RACER_PROGS//[,+]/ } -# allow e.g. RACER_EXTRA=dir_create:5,file_link:10 to launch extra tasks -for PROG in ${RACER_EXTRA//,/ }; do +# allow e.g. RACER_EXTRA=dir_create:5,file_link:10 or +# RACER_EXTRA=dir_create:5+file_link:10 to launch extra tasks +for PROG in ${RACER_EXTRA//[,+]/ }; do prog=(${PROG/:/ }) count=${prog[1]:-1} for ((i = 0; i < count; i++)); do @@ -26,14 +38,6 @@ for PROG in ${RACER_EXTRA//,/ }; do done done -if $RACER_ENABLE_REMOTE_DIRS || $RACER_ENABLE_STRIPED_DIRS; then - RACER_PROGS+=' dir_remote' -fi - -if $RACER_ENABLE_MIGRATION; then - RACER_PROGS+=' dir_migrate' -fi - racer_cleanup() { echo "racer cleanup" @@ -80,13 +84,13 @@ RC=0 echo "Running $0 for $DURATION seconds. CTRL-C to exit" trap " - echo \"Cleaning up\" + echo 'Cleaning up' racer_cleanup exit 0 " INT TERM -cd `dirname $0` -for N in `seq 1 $NUM_THREADS`; do +cd $(dirname $0) +for ((N = 1; N <= $NUM_THREADS; N++)); do for P in $RACER_PROGS; do RACER_MIGRATE_STRIPE_MAX=$RACER_MIGRATE_STRIPE_MAX \ ./$P.sh $DIR $MAX_FILES & @@ -99,5 +103,5 @@ racer_cleanup || RC=$? # Check our to see whether our test DIR is still available. df $DIR (( RC+=$? )) -[ $RC -eq 0 ] && echo "We survived $0 for $DURATION seconds." +(( $RC == 0 )) && echo "We survived $0 for $DURATION seconds." exit $RC