X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Ftests%2Fracer%2Ffile_create.sh;h=78d68e5edb85d9c80663922fe64f96ec40ef2059;hb=5a28f3bc4bd769d61dde54fdbf7ad11a16b47224;hp=c07c8131d85770de305b7a627ab58af111b654b3;hpb=4eefbc353d464dcbf24afcc575f5a9830cdc6806;p=fs%2Flustre-release.git diff --git a/lustre/tests/racer/file_create.sh b/lustre/tests/racer/file_create.sh index c07c813..78d68e5 100755 --- a/lustre/tests/racer/file_create.sh +++ b/lustre/tests/racer/file_create.sh @@ -1,25 +1,28 @@ #!/bin/bash trap 'kill $(jobs -p)' EXIT -RACER_ENABLE_DOM=${RACER_ENABLE_DOM:-false} +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} -. $LUSTRE/tests/test-framework.sh - -OSTCOUNT=${OSTCOUNT:-$($LFS df $DIR 2> /dev/null | grep -c OST)} - layout=(raid0 raid0) # check if it supports PFL layout -[[ $(lustre_version_code $SINGLEMDS) -ge $(version_code 2.10.0) ]] && - layout+=(pfl pfl pfl) +$RACER_ENABLE_PFL && layout+=(pfl pfl pfl) # check if it supports DoM -if $RACER_ENABLE_DOM ; then - [[ $(lustre_version_code $SINGLEMDS) -ge $(version_code 2.10.53) ]] && - layout+=(dom dom dom) -fi +$RACER_ENABLE_DOM && layout+=(dom dom dom) + +# check if it supports FLR +$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[*]}" @@ -30,16 +33,20 @@ while /bin/true; do stripecount=$((RANDOM % (OSTCOUNT + 1))) [ $stripecount -gt 0 ] && { - stripesize=$(((RANDOM % 16 + 1) * 64))K + stripesize=$(((1 << (RANDOM % 5)) * 64))K + comp_end=$((${stripesize%K} * (RANDOM % 8 + 1)))K pattern=${layout[$RANDOM % ${#layout[*]}]} case $pattern in - dom) opt="-E $stripesize -L mdt -E eof -c $stripecount -S 1M" ;; - pfl) opt="-E 1M -S $stripesize -E eof -c $stripecount -S 2M" ;; - raid0) opt="-S $stripesize -c $stripecount" ;; + dom) opt="setstripe -E $stripesize -L mdt -E eof -c $stripecount -S 1M" ;; + pfl) opt="setstripe -E $comp_end -S $stripesize -E eof -c $stripecount -S 2M" ;; + 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 setstripe $opt $DIR/$file 2> /dev/null || true + $LFS $opt $DIR/$file 2> /dev/null || true } # offset between 0 and 16MB (256 64k chunks), with 1/2 at offset 0