From c322715245abcb2393898be1f902e3c2bfb5914c Mon Sep 17 00:00:00 2001 From: Andreas Dilger Date: Tue, 18 Oct 2022 17:53:01 -0600 Subject: [PATCH] LU-16250 tests: remove metadata-updates.sh script The metadata-updates.sh test script doesn't really test anything particularly interesting, and appears never to fail unless all of the tests in that session fail, which indicates to me that anything of interest that it might have tested has already been caught by some earlier test. It has not been updated for anything except test-framework changes in many years. The only minor part of interest is write_disjoint, but that is also tested by parallel-scale (along with more MPI tests). Test-Parameters: trivial optional testgroup=review-dne-part-8 Signed-off-by: Andreas Dilger Change-Id: I3891cf4cabdc777c2648a95fd821a376f7e6c87f Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/48913 Tested-by: jenkins Tested-by: Maloo Reviewed-by: Alex Deiter Reviewed-by: Sarah Liu Reviewed-by: Oleg Drokin --- lustre/tests/Makefile.am | 2 +- lustre/tests/metadata-updates.sh | 278 ------------------------------------ lustre/tests/test-groups/regression | 1 - 3 files changed, 1 insertion(+), 280 deletions(-) delete mode 100755 lustre/tests/metadata-updates.sh diff --git a/lustre/tests/Makefile.am b/lustre/tests/Makefile.am index 3d346f6..c1d2a09 100644 --- a/lustre/tests/Makefile.am +++ b/lustre/tests/Makefile.am @@ -29,7 +29,7 @@ noinst_SCRIPTS += sanity-sec.sh sanity-selinux.sh noinst_SCRIPTS += sanity-krb5.sh krb5_login.sh setup_kerberos.sh noinst_SCRIPTS += recovery-mds-scale.sh run_dd.sh run_tar.sh run_iozone.sh noinst_SCRIPTS += run_dbench.sh run_IOR.sh recovery-double-scale.sh -noinst_SCRIPTS += recovery-random-scale.sh parallel-scale.sh metadata-updates.sh +noinst_SCRIPTS += recovery-random-scale.sh parallel-scale.sh noinst_SCRIPTS += lustre-rsync-test.sh ost-pools.sh rpc.sh yaml.sh if BUILD_LUTF noinst_SCRIPTS += lutf.sh diff --git a/lustre/tests/metadata-updates.sh b/lustre/tests/metadata-updates.sh deleted file mode 100755 index ba4f283..0000000 --- a/lustre/tests/metadata-updates.sh +++ /dev/null @@ -1,278 +0,0 @@ -#!/bin/bash - -# A Metadata Update Test tests that -# metadata updates are properly completed when -# multiple clients create/delete files and modify the attributes of files. - -set -e - -ONLY=${ONLY:-"$*"} - -LUSTRE=${LUSTRE:-$(dirname $0)/..} -. $LUSTRE/tests/test-framework.sh -init_test_env "$@" -init_logging - -#Bug number for skipped test: -ALWAYS_EXCEPT="$METADATA_UPDATES_EXCEPT " -# UPDATE THE COMMENT ABOVE WITH BUG NUMBERS WHEN CHANGING ALWAYS_EXCEPT LIST -build_test_filter - -TRACE=${TRACE:-"+x"} - -TESTDIR=${TESTDIR:-$DIR/d0.$(basename $0 .sh)} - -NODES_TO_USE=${NODES_TO_USE:-$CLIENTS} - -[ -z $CLIENTS ] && NODES_TO_USE=$(hostname) - -# hostname could differ from a network interface -# configured for NODES_TO_USE, bug 23961 -# the test dir on each host is created based on `hostname` of this host -HOSTS=$(comma_list $(do_nodes $NODES_TO_USE "echo \\\$(hostname)")) - -FILE=testfile -FILE_SIZE=1024 -CURRENT_MODE=0644 -NEW_MODE=0222 -NEW_ATIME="2001-01-01 GMT" -NEW_MTIME="2005-05-05 GMT" - -test_USER=$(id -u -n) -test_GROUP=$(id -g -n) - -SUMFILE=$TESTDIR/mdsum - -NUM_FILES=1000 - -log "===== $0 ====== " - -check_and_setup_lustre - -cleanup_prepare () { - - do_nodes $NODES_TO_USE "set $TRACE; - DIR=$TESTDIR/\\\$(hostname); - TESTFILE=\\\$DIR/$FILE; - rm -f \\\$TESTFILE; - rm -f $SUMFILE; - rmdir \\\$DIR 2>/dev/null; - mkdir -p \\\$DIR" || return ${PIPESTATUS[0]} - return 0; -} - -do_mknod () { - log "Creating file(s) by mknod (2) ... " - - do_nodes $NODES_TO_USE "set $TRACE; - TESTFILE=$TESTDIR/\\\$(hostname)/$FILE; - mcreate \\\$TESTFILE; " || return ${PIPESTATUS[0]} - return 0 -} - -do_write () { - do_nodes $NODES_TO_USE "set $TRACE; - TESTFILE=$TESTDIR/\\\$(hostname)/$FILE; - dd if=/dev/zero of=\\\$TESTFILE bs=$FILE_SIZE count=1 2>/dev/null || - exit 54; - echo \\\$(hostname) | dd of=\\\$TESTFILE conv=notrunc 2>/dev/null || - exit 55; - md5sum \\\$TESTFILE >> $SUMFILE; " || return ${PIPESTATUS[0]} - return 0 -} - -do_check_data () { - log "Checking file(s) data ... md5sum : " - cat $SUMFILE - - do_nodesv $NODES_TO_USE "md5sum --check $SUMFILE" || - return ${PIPESTATUS[0]} - return 0 -} - -do_truncate () { - log "Truncating file(s) ... " - - do_nodes $NODES_TO_USE "set $TRACE; - TESTFILE=$TESTDIR/\\\$(hostname)/$FILE; - $TRUNCATE \\\$TESTFILE 0" || return ${PIPESTATUS[0]} - - FILE_SIZE=0 - return 0 -} - -# check st_uid, st_gid, st_size, st_mode -get_stat () { - local attr="$test_USER $test_GROUP $FILE_SIZE $CURRENT_MODE" - - log "Checking file(s) attributes ... " - - do_nodesv $NODES_TO_USE "set $TRACE; -for HOST in ${HOSTS//,/ } ; do - TESTFILE=$TESTDIR/\\\$HOST/$FILE; - tmp=\\\$(stat -c \\\"%U %G %s 0%a\\\" \\\$TESTFILE); - echo \\\"\\\$TESTFILE [ uid gid size mode ] expected : $attr ; got : \\\$tmp \\\"; - if [ x\\\"\\\$tmp\\\" != x\\\"$attr\\\" ] ; then - echo \\\"Wrong file attributes\\\"; - exit 56; - fi; -done " || return ${PIPESTATUS[0]} - return 0 -} - -do_chmod () { - log "Performing chmod 0$NEW_MODE ..." - - do_nodes $NODES_TO_USE "set $TRACE; - TESTFILE=$TESTDIR/\\\$(hostname)/$FILE; - chmod $NEW_MODE \\\$TESTFILE" || return ${PIPESTATUS[0]} - - CURRENT_MODE=$NEW_MODE - return 0 -} - -do_change_timestamps () { - log "Changing atime, mtime ..." - - do_nodes $NODES_TO_USE " set $TRACE; - TESTFILE=$TESTDIR/\\\$(hostname)/$FILE; - touch -c --date=\\\"$NEW_ATIME\\\" -a \\\$TESTFILE; - touch -c --date=\\\"$NEW_MTIME\\\" -m \\\$TESTFILE " || - return ${PIPESTATUS[0]} - return 0 -} - -# check st_atime, st_mtime -do_check_timestamps () { - local atime=$(date --date="$NEW_ATIME" +%s) - local mtime=$(date --date="$NEW_MTIME" +%s) - - local times="$atime $mtime" - - log "Checking atime, mtime ... " - - do_nodesv $NODES_TO_USE "set $TRACE; -for HOST in ${HOSTS//,/ } ; do - TESTFILE=$TESTDIR/\\\$HOST/$FILE; - tmp=\\\$(stat -c \\\"%X %Y\\\" \\\$TESTFILE); - if [ x\\\"\\\$tmp\\\" != x\\\"$times\\\" ] ; then - echo \\\"\\\$TESTFILE [ atime mtime ] expected : $times ; got : \\\$tmp \\\"; - RC=57; - fi; -done; -exit \\\$RC" || return ${PIPESTATUS[0]} - return 0 -} - -do_fill_dir () { - log "Filling up directories ... files : f1 ... f$NUM_FILES) ... " - - do_nodes $NODES_TO_USE "set $TRACE; - TESTFILE=$TESTDIR/\\\$(hostname)/$FILE; - rm -f \\\$TESTFILE; - DIR=$TESTDIR/\\\$(hostname); - for i in \\\$(seq $NUM_FILES) ; do - touch \\\$DIR/f\\\$i; - done " || return ${PIPESTATUS[0]} - return 0 -} - -check_dir_contents () { - local num_files=${1:-1} - - log "Directory contents should exist: f$num_files ... f$NUM_FILES)" - do_nodes $NODES_TO_USE "set $TRACE; -for HOST in ${HOSTS//,/ } ; do - DIR=$TESTDIR/\\\$HOST; - for i in \\\$(seq $NUM_FILES -1 $num_files) ; do - if ! [ -f \\\$DIR/f\\\$i ] ; then - echo \\\"ERROR: file \\\$DIR/f\\\$i should exist\\\"; - RC=1; - fi; - done; - for i in \\\$(seq $(($num_files - 1 ))) ; do - if [ -f \\\$DIR/f\\\$i ] ; then - echo \\\"ERROR: deleted file \\\$DIR/f\\\$i exists\\\"; - RC=1; - fi; - done; -done; -exit \\\$RC " || return ${PIPESTATUS[0]} - return 0 -} - -do_partial_delete () { - local num_files=$1 - - log "Deleting files ... f1 ... f$num_files ... " - do_nodes $NODES_TO_USE "set $TRACE; -DIR=$TESTDIR/\\\$(hostname); -for i in \\\$(seq $num_files) ; do - if ! rm -f \\\$DIR/f\\\$i ; then - exit 1; - fi; -done " || return ${PIPESTATUS[0]} - return 0 -} - -chmod 0777 $MOUNT || exit 1 -mkdir -p $TESTDIR || exit 1 -chmod 0777 $TESTDIR || exit 1 - -cleanup_prepare || error_exit "cleanup failed" - -test_1(){ - log "Create files (mknod (2)) and write data" - do_mknod || error "mknod failed" - do_write || error "write data failed" - log "Check data and file attributes." - do_check_data || error "md5sum verification failed" - get_stat || error "attributes check failed" - - # file attributes modification - log "File attributes modification." - do_chmod || error "chmod failed" - get_stat || error "wrong attributes after chmod" - - do_change_timestamps || error "timestamps change failed" - do_check_timestamps || error "wrong timestamps" - - # truncate file(s) to 0 size, check new file size - log "Truncate file(s) to 0 size, check new file size." - do_truncate || error "truncate failed" - get_stat || error "wrong attributes after truncate" -} -run_test 1 "create files (mknod), write and check data, truncate files" - -test_2() { - do_fill_dir || error "dir creation failed" - check_dir_contents || error "dir contents check failed" - - do_partial_delete $(($NUM_FILES / 2)) || error "delete failed" - check_dir_contents $(($NUM_FILES / 2 + 1)) || - error "dir contents check after delete failed" -} -run_test 2 "directory content create, check, delete files , check" - -test_3() { - WRITE_DISJOINT=${WRITE_DISJOINT:-$(which write_disjoint 2> /dev/null)} || true - disjoint_file=$TESTDIR/$tfile - numloops=1000 - - [ ! -f "$WRITE_DISJOINT" ] && skip_env "write_disjoint not found" - - set $TRACE - generate_machine_file $NODES_TO_USE $MACHINEFILE - mpi_run ${MACHINEFILE_OPTION} ${MACHINEFILE} \ - -np $(get_node_count ${NODES_TO_USE//,/ }) \ - $WRITE_DISJOINT -f $disjoint_file -n $numloops || - error "mpi_run failed" - - rm -f $MACHINEFILE -} -run_test 3 "write_disjoint test" - -complete $SECONDS -rm -rf $TESTDIR -check_and_cleanup_lustre -exit_status diff --git a/lustre/tests/test-groups/regression b/lustre/tests/test-groups/regression index ac4b4b5..e071564 100644 --- a/lustre/tests/test-groups/regression +++ b/lustre/tests/test-groups/regression @@ -2,7 +2,6 @@ runtests sanity sanityn sanity-benchmark -metadata-updates racer lnet-selftest replay-single -- 1.8.3.1