Whamcloud - gitweb
LU-10994 test: remove netdisk from obdfilter-survey
[fs/lustre-release.git] / lustre / tests / sanity-lsnapshot.sh
index 26fd232..afa20ca 100755 (executable)
@@ -7,22 +7,20 @@
 set -e
 
 ONLY=${ONLY:-"$*"}
-ALWAYS_EXCEPT="$SANITY_LSNAPSHOT_EXCEPT"
-[ "$SLOW" = "no" ] && EXCEPT_SLOW=""
-# UPDATE THE COMMENT ABOVE WITH BUG NUMBERS WHEN CHANGING ALWAYS_EXCEPT!
 
-LUSTRE=${LUSTRE:-$(cd $(dirname $0)/..; echo $PWD)}
+LUSTRE=${LUSTRE:-$(dirname $0)/..}
 . $LUSTRE/tests/test-framework.sh
 init_test_env $@
-. ${CONFIG:=$LUSTRE/tests/cfg/$NAME.sh}
 init_logging
 
-[[ $(lustre_version_code mds1) -lt $(version_code 2.9.55) ]] ||
-[[ $(lustre_version_code ost1) -lt $(version_code 2.9.55) ]] &&
-       skip "Need server version at least 2.9.55" && exit 0
-[[ $(facet_fstype mds1) = "ldiskfs" ]] ||
-[[ $(facet_fstype ost1) = "ldiskfs" ]] &&
-       skip "ZFS only test" && exit 0
+ALWAYS_EXCEPT="$SANITY_LSNAPSHOT_EXCEPT "
+build_test_filter
+
+[[ "$MDS1_VERSION" -lt $(version_code 2.9.55) ]] ||
+[[ "$OST1_VERSION" -lt $(version_code 2.9.55) ]] &&
+       skip "Need server version at least 2.9.55"
+[[ "$mds1_FSTYPE" = "ldiskfs" ]] || [[ "$ost1_FSTYPE" = "ldiskfs" ]] &&
+       skip "ZFS only test"
 
 require_dsh_mds || exit 0
 require_dsh_ost || exit 0
@@ -34,7 +32,6 @@ do_nodes $(comma_list $(mdts_nodes)) $LCTL set_param debug=+snapshot
 
 lss_gen_conf
 lss_cleanup
-build_test_filter
 
 test_0() {
        echo "Create lss_0_0 with default"
@@ -330,6 +327,41 @@ test_3b() {
 }
 run_test 3b "modify snapshot without original filesystem mounted"
 
+test_4() { # LU-10843
+       combined_mgs_mds && skip "Combined MGS/MDS" && return
+
+       local rcmd="$LCTL get_param ldlm.namespaces.MGS.resource_count"
+
+       local exports=$(do_facet mgs "$LCTL get_param -n mgs.MGS.num_exports")
+       local rcount=$(do_facet mgs $rcmd)
+
+       echo "Remount MGT"
+       stop mgs || error "stop mgs failed"
+       start mgs $(mgsdevname) $MGS_MOUNT_OPTS || error "start mgs failed"
+
+       echo "Wait for all reconnects"
+       local CMD="$LCTL get_param -n mgs.MGS.num_exports"
+       wait_update_facet mgs "$CMD" $exports ||
+               lss_err "(1) failed to export from mgs"
+
+       wait_update_facet mgs "$rcmd" $rcount ||
+               lss_err "(2) failed to reconnect mds"
+
+       echo "Create lss_4_0"
+       lsnapshot_create -n lss_4_0 -c "'It is test_4'" ||
+               lss_err "(3) Fail to create lss_4_0"
+
+       echo "List lss_4_0"
+       lsnapshot_list -n lss_4_0 ||
+               lss_err "(4) Fail to list lss_4_0"
+
+       echo "Destroy lss_4_0"
+       lsnapshot_destroy -n lss_4_0 ||
+               lss_err "(5) Fail to destroy lss_4_0"
+
+}
+run_test 4 "create/delete snapshot after MGS remount"
+
 lss_cleanup
 do_facet mgs $LCTL set_param debug=-snapshot
 do_nodes $(comma_list $(mdts_nodes)) $LCTL set_param debug=-snapshot