X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Ftests%2Fsanity-scrub.sh;h=f45cba90e36efb00bd4293c2860912d3654eef52;hp=efb9a648fa77870146bda4e70c09c9d2716f9036;hb=e0ad58529f992d4b4bee76f8aabadf72bcc9b503;hpb=342149e654cdde71b34ad0148749adc7cf9f7cfe diff --git a/lustre/tests/sanity-scrub.sh b/lustre/tests/sanity-scrub.sh index efb9a64..f45cba9 100644 --- a/lustre/tests/sanity-scrub.sh +++ b/lustre/tests/sanity-scrub.sh @@ -7,8 +7,7 @@ set -e ONLY=${ONLY:-"$*"} -#Bug number for excepting test 6705 -ALWAYS_EXCEPT="$SANITY_SCRUB_EXCEPT 1c 5 10" +ALWAYS_EXCEPT="$SANITY_SCRUB_EXCEPT" [ "$SLOW" = "no" ] && EXCEPT_SLOW="" # UPDATE THE COMMENT ABOVE WITH BUG NUMBERS WHEN CHANGING ALWAYS_EXCEPT! @@ -21,6 +20,22 @@ init_logging require_dsh_mds || exit 0 +load_modules + +if ! check_versions; then + skip "It is NOT necessary to test scrub under interoperation mode" + exit 0 +fi + +[ $(facet_fstype $SINGLEMDS) != "ldiskfs" ] && + skip "test OI scrub only for ldiskfs" && exit 0 + +[ $(facet_fstype ost1) != "ldiskfs" ] && + skip "test OI scrub only for ldiskfs" && exit 0 + +[[ $(lustre_version_code $SINGLEMDS) -lt $(version_code 2.2.90) ]] && + skip "Need MDS version at least 2.2.90" && exit 0 + SAVED_MDSSIZE=${MDSSIZE} SAVED_OSTSIZE=${OSTSIZE} SAVED_OSTCOUNT=${OSTCOUNT} @@ -30,6 +45,7 @@ SAVED_OSTCOUNT=${OSTCOUNT} MDSSIZE=200000 OSTSIZE=100000 # no need too much OSTs, to reduce the format/start/stop overhead +stopall [ $OSTCOUNT -gt 4 ] && OSTCOUNT=4 MOUNT_2="" @@ -38,16 +54,6 @@ MOUNT_2="" formatall setupall -[ $(facet_fstype $SINGLEMDS) != "ldiskfs" ] && - skip "test OI scrub only for ldiskfs" && check_and_cleanup_lustre && - exit 0 -[ $(facet_fstype ost1) != "ldiskfs" ] && - skip "test OI scrub only for ldiskfs" && check_and_cleanup_lustre && - exit 0 -[[ $(lustre_version_code $SINGLEMDS) -lt $(version_code 2.2.90) ]] && - skip "Need MDS version at least 2.2.90" && check_and_cleanup_lustre && - exit 0 - [[ $(lustre_version_code $SINGLEMDS) -lt $(version_code 2.3.90) ]] && ALWAYS_EXCEPT="$ALWAYS_EXCEPT 1a" @@ -402,7 +408,7 @@ test_3() { echo "starting MDTs with OI scrub disabled" scrub_start_mds 2 "$MOUNT_OPTS_NOSCRUB" scrub_check_status 3 init - scrub_check_flags 4 inconsistent + scrub_check_flags 4 recreated,inconsistent } #run_test 3 "Do not trigger OI scrub when MDT mounts if 'noscrub' specified" @@ -411,7 +417,7 @@ test_4a() { scrub_backup_restore 1 echo "starting MDTs with OI scrub disabled" scrub_start_mds 2 "$MOUNT_OPTS_NOSCRUB" - scrub_check_flags 4 inconsistent + scrub_check_flags 4 recreated,inconsistent mount_client $MOUNT || error "(5) Fail to start client!" scrub_enable_auto full_scrub_ratio 0 @@ -445,7 +451,7 @@ test_4b() { scrub_backup_restore 1 echo "starting MDTs with OI scrub disabled" scrub_start_mds 2 "$MOUNT_OPTS_NOSCRUB" - scrub_check_flags 4 inconsistent + scrub_check_flags 4 recreated,inconsistent mount_client $MOUNT || error "(5) Fail to start client!" scrub_enable_auto full_scrub_ratio 10 @@ -511,7 +517,7 @@ test_4c() { scrub_backup_restore 1 echo "starting MDTs with OI scrub disabled" scrub_start_mds 2 "$MOUNT_OPTS_NOSCRUB" - scrub_check_flags 4 inconsistent + scrub_check_flags 4 recreated,inconsistent mount_client $MOUNT || error "(5) Fail to start client!" scrub_enable_auto full_scrub_ratio 2 @@ -581,7 +587,7 @@ test_5() { echo "starting MDTs with OI scrub disabled (1)" scrub_start_mds 2 "$MOUNT_OPTS_NOSCRUB" scrub_check_status 3 init - scrub_check_flags 4 inconsistent + scrub_check_flags 4 recreated,inconsistent mount_client $MOUNT || error "(5) Fail to start client!" scrub_enable_auto @@ -648,7 +654,7 @@ test_6() { scrub_backup_restore 1 echo "starting MDTs with OI scrub disabled" scrub_start_mds 2 "$MOUNT_OPTS_NOSCRUB" - scrub_check_flags 4 inconsistent + scrub_check_flags 4 recreated,inconsistent mount_client $MOUNT || error "(5) Fail to start client!" scrub_enable_auto @@ -726,7 +732,7 @@ test_7() { scrub_backup_restore 1 echo "starting MDTs with OI scrub disabled" scrub_start_mds 2 "$MOUNT_OPTS_NOSCRUB" - scrub_check_flags 4 inconsistent + scrub_check_flags 4 recreated,inconsistent mount_client $MOUNT || error "(5) Fail to start client!" scrub_enable_auto @@ -744,7 +750,7 @@ test_7() { done scrub_check_status 8 scanning - scrub_check_flags 9 inconsistent,auto + scrub_check_flags 9 recreated,inconsistent,auto do_nodes $(comma_list $(mdts_nodes)) \ $LCTL set_param fail_loc=0 fail_val=0 @@ -759,7 +765,7 @@ test_8() { scrub_backup_restore 1 echo "starting MDTs with OI scrub disabled" scrub_start_mds 2 "$MOUNT_OPTS_NOSCRUB" - scrub_check_flags 4 inconsistent + scrub_check_flags 4 recreated,inconsistent #define OBD_FAIL_OSD_SCRUB_DELAY 0x190 do_nodes $(comma_list $(mdts_nodes)) \ @@ -791,7 +797,7 @@ test_9() { echo "starting MDTs with OI scrub disabled" scrub_start_mds 2 "$MOUNT_OPTS_NOSCRUB" - scrub_check_flags 4 inconsistent + scrub_check_flags 4 recreated,inconsistent local BASE_SPEED1=100 local RUN_TIME1=10 @@ -865,7 +871,7 @@ test_10a() { scrub_backup_restore 1 echo "starting mds$n with OI scrub disabled (1)" scrub_start_mds 2 "$MOUNT_OPTS_NOSCRUB" - scrub_check_flags 4 inconsistent + scrub_check_flags 4 recreated,inconsistent mount_client $MOUNT || error "(5) Fail to start client!" scrub_enable_auto @@ -900,7 +906,7 @@ test_10b() { scrub_backup_restore 1 echo "starting MDTs with OI scrub disabled" scrub_start_mds 2 "$MOUNT_OPTS_NOSCRUB" - scrub_check_flags 4 inconsistent + scrub_check_flags 4 recreated,inconsistent #define OBD_FAIL_OSD_SCRUB_DELAY 0x190 do_nodes $(comma_list $(mdts_nodes)) \ @@ -1072,7 +1078,7 @@ test_14() { mount_client $MOUNT || error "(5) Fail to start client!" local LF_REPAIRED=$($SHOW_SCRUB_ON_OST | - awk '/^lf_reparied/ { print $2 }') + awk '/^lf_repa[ri]*ed/ { print $2 }') [ $LF_REPAIRED -gt 0 ] || error "(6) Some entry under /lost+found should be repaired" @@ -1081,15 +1087,13 @@ test_14() { run_test 14 "OI scrub can repair objects under lost+found" test_15() { - # skip test_15 for LU-4182 - [ $MDSCOUNT -ge 2 ] && skip "skip now for >= 2 MDTs" && return local server_version=$(lustre_version_code $SINGLEMDS) scrub_prep 20 scrub_backup_restore 1 echo "starting MDTs with OI scrub disabled" scrub_start_mds 2 "$MOUNT_OPTS_NOSCRUB" scrub_check_status 3 init - scrub_check_flags 4 inconsistent + scrub_check_flags 4 recreated,inconsistent # run under dryrun mode if [ $server_version -lt $(version_code 2.5.58) ]; then @@ -1098,7 +1102,7 @@ test_15() { scrub_start 5 --dryrun fi scrub_check_status 6 completed - scrub_check_flags 7 inconsistent + scrub_check_flags 7 recreated,inconsistent scrub_check_params 8 dryrun scrub_check_repaired 9 20 @@ -1109,7 +1113,7 @@ test_15() { scrub_start 10 --dryrun fi scrub_check_status 11 completed - scrub_check_flags 12 inconsistent + scrub_check_flags 12 recreated,inconsistent scrub_check_params 13 dryrun scrub_check_repaired 14 20