From 6d9e74580ee391c27cf9a2dc249030f170217ffe Mon Sep 17 00:00:00 2001 From: Elena Gryaznova Date: Mon, 24 May 2021 19:45:12 +0300 Subject: [PATCH] LU-14274 tests: enhance racer to set extra layout Patch adds an ability to set: - a generic "RACER_EXTRA_LAYOUT" contained any kind of layout in addition to layouts defined for RACER_ENABLE_*; - an initial racer RACER_PROGS commands list. The additional commands specified by RACER_EXTRA, RACER_ENABLE_REMOTE_DIRS, RACER_ENABLE_STRIPED_DIRS and RACER_ENABLE_MIGRATION are not ignored, i.e. the following parameters are to be set to run file_create only: RACER_ENABLE_REMOTE_DIRS=false RACER_ENABLE_STRIPED_DIRS=false RACER_ENABLE_MIGRATION=false. Patch fixes NUM_THREADS and MAX_FILES to be passed correctly. Test-Parameters: testlist=racer Signed-off-by: Elena Gryaznova HPE-bug-id: LUS-9142 Reviewed-by: Vladimir Saveliev Reviewed-by: Alexander Zarochentsev Change-Id: I9994dfdb0555a3acd75daa4cfd27a0cb62074e36 Reviewed-on: https://review.whamcloud.com/41077 Tested-by: jenkins Reviewed-by: Andreas Dilger Reviewed-by: Vladimir Saveliev Reviewed-by: Alexander Boyko Tested-by: Maloo Reviewed-by: Oleg Drokin --- lustre/tests/racer.sh | 16 +++++++++++++++- lustre/tests/racer/file_create.sh | 3 +++ lustre/tests/racer/racer.sh | 7 ++++--- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/lustre/tests/racer.sh b/lustre/tests/racer.sh index 82f4a76..1f21f42 100644 --- a/lustre/tests/racer.sh +++ b/lustre/tests/racer.sh @@ -72,6 +72,7 @@ RACER_ENABLE_PFL=${RACER_ENABLE_PFL:-true} RACER_ENABLE_DOM=${RACER_ENABLE_DOM:-true} RACER_ENABLE_FLR=${RACER_ENABLE_FLR:-true} RACER_ENABLE_SEL=${RACER_ENABLE_SEL:-true} +RACER_EXTRA_LAYOUT=${RACER_EXTRA_LAYOUT:-""} fail_random_facet () { local facets=${victims[@]} @@ -101,7 +102,10 @@ test_1() { RDIRS="$RDIRS $d/racer" mkdir -p $d/racer - # lfs setstripe $d/racer -c -1 + if [[ -n "$RACER_EXTRA_LAYOUT" ]]; then + $LFS setstripe $d/racer $RACER_EXTRA_LAYOUT || + error "setstripe $RACER_EXTRA_LAYOUT failed" + fi if [ $MDSCOUNT -ge 2 ]; then for i in $(seq $((MDSCOUNT - 1))); do RDIRS="$RDIRS $d/racer$i" @@ -109,6 +113,12 @@ test_1() { $LFS mkdir -i $i $d/racer$i || error "lfs mkdir $i failed" fi + if [[ -n "$RACER_EXTRA_LAYOUT" ]]; then + $LFS setstripe $d/racer$i \ + $RACER_EXTRA_LAYOUT || + error "setstripe \ + $RACER_EXTRA_LAYOUT failed" + fi done fi done @@ -126,6 +136,10 @@ test_1() { RACER_MAX_CLEANUP_WAIT=$RACER_MAX_CLEANUP_WAIT \ RACER_ENABLE_SEL=$RACER_ENABLE_SEL \ RACER_EXTRA=$RACER_EXTRA \ + RACER_EXTRA_LAYOUT=\\\"$RACER_EXTRA_LAYOUT\\\" \ + RACER_PROGS=$RACER_PROGS \ + NUM_THREADS=$NUM_THREADS \ + MAX_FILES=$MAX_FILES \ LFS=$LFS \ LCTL=$LCTL \ $racer $rdir $NUM_RACER_THREADS" & diff --git a/lustre/tests/racer/file_create.sh b/lustre/tests/racer/file_create.sh index dcd4033..78d68e5 100755 --- a/lustre/tests/racer/file_create.sh +++ b/lustre/tests/racer/file_create.sh @@ -4,6 +4,7 @@ RACER_ENABLE_PFL=${RACER_ENABLE_PFL:-true} RACER_ENABLE_DOM=${RACER_ENABLE_DOM:-true} RACER_ENABLE_FLR=${RACER_ENABLE_FLR:-true} RACER_ENABLE_SEL=${RACER_ENABLE_SEL:-true} +RACER_EXTRA_LAYOUT=${RACER_EXTRA_LAYOUT:-""} DIR=$1 MAX=$2 MAX_MB=${RACER_MAX_MB:-8} @@ -21,6 +22,7 @@ $RACER_ENABLE_FLR && layout+=(flr flr flr) # check if it supports PFL layout $RACER_ENABLE_SEL && layout+=(sel sel sel) +[[ -n "$RACER_EXTRA_LAYOUT" ]] && layout+=(extra extra extra) echo "layout: ${layout[*]}" @@ -41,6 +43,7 @@ while /bin/true; do flr) opt="mirror create -N2 -E $comp_end -S $stripesize -E eof -c $stripecount -S 2M" ;; sel) opt="setstripe -E 128M -S $stripesize -z 64M -E eof -c $stripecount -S 2M -z 128M" ;; raid0) opt="setstripe -S $stripesize -c $stripecount" ;; + extra) opt="setstripe $RACER_EXTRA_LAYOUT" ;; esac $LFS $opt $DIR/$file 2> /dev/null || true diff --git a/lustre/tests/racer/racer.sh b/lustre/tests/racer/racer.sh index c60a7c5..5f378bc 100755 --- a/lustre/tests/racer/racer.sh +++ b/lustre/tests/racer/racer.sh @@ -12,9 +12,10 @@ RACER_MAX_CLEANUP_WAIT=${RACER_MAX_CLEANUP_WAIT:-$DURATION} mkdir -p $DIR -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" +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"} # allow e.g. RACER_EXTRA=dir_create:5,file_link:10 to launch extra tasks for PROG in ${RACER_EXTRA//,/ }; do -- 1.8.3.1