Whamcloud - gitweb
LU-8038 tests: test case for lfs migrate --block
[fs/lustre-release.git] / lustre / tests / sanity-scrub.sh
index 18280a7..f45cba9 100644 (file)
@@ -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}
@@ -39,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"
 
@@ -403,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"
 
@@ -412,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
@@ -446,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
@@ -512,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
@@ -582,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
 
@@ -649,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
 
@@ -727,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
 
@@ -745,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
@@ -760,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)) \
@@ -792,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
@@ -866,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
 
@@ -901,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)) \
@@ -1082,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
@@ -1099,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
 
@@ -1110,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