From ecec792dd918e8f5c5bcfdc30098a3d0bf6acf50 Mon Sep 17 00:00:00 2001 From: sarah Date: Thu, 20 Sep 2012 13:26:35 -0700 Subject: [PATCH] LU-1850 test: remount client if replay-vbr fails Remount client lustre if checkstat fails to make sure the following tests running in a healthy environment Change-Id: I764e83ee31d8cc19d79632e805a6e75225e67adf Signed-off-by: sarah Reviewed-on: http://review.whamcloud.com/4063 Tested-by: Hudson Reviewed-by: Yu Jian Reviewed-by: Niu Yawei Reviewed-by: Li Wei Tested-by: Maloo Reviewed-by: Oleg Drokin --- lustre/tests/replay-vbr.sh | 22 +++++++++++----------- lustre/tests/test-framework.sh | 6 ++++++ 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/lustre/tests/replay-vbr.sh b/lustre/tests/replay-vbr.sh index 1ad9288..50e483f 100644 --- a/lustre/tests/replay-vbr.sh +++ b/lustre/tests/replay-vbr.sh @@ -146,7 +146,7 @@ test_1b() { # former test_0b client_evicted $CLIENT1 || error "$CLIENT1 not evicted" if ! do_node $CLIENT1 $CHECKSTAT -a $DIR/$tdir/$tfile; then - error "open succeeded unexpectedly" + error_and_remount "open succeeded unexpectedly" fi } run_test 1b "open (O_CREAT) checks version of parent" @@ -233,7 +233,7 @@ test_2b() { # former test_0e client_evicted $CLIENT1 || error "$CLIENT1 not evicted" if ! do_node $CLIENT1 $CHECKSTAT -a $DIR/$tdir/$tfile; then - error "create succeeded unexpectedly" + error_and_remount "create succeeded unexpectedly" fi } run_test 2b "create checks version of parent" @@ -270,7 +270,7 @@ test_3b() { # former test_0g client_evicted $CLIENT1 || error "$CLIENT1 not evicted" if do_node $CLIENT1 $CHECKSTAT -a $DIR/$tdir/$tfile; then - error "unlink succeeded unexpectedly" + error_and_remount "unlink succeeded unexpectedly" fi } run_test 3b "unlink checks version of parent" @@ -323,7 +323,7 @@ test_4c() { # former test_0j client_evicted $CLIENT1 || error "$CLIENT1 not evicted" if ! do_node $CLIENT1 $CHECKSTAT -u \\\#$UID $file; then - error "setattr of UID succeeded unexpectedly" + error_and_remount "setattr of UID succeeded unexpectedly" fi } run_test 4c "setattr of UID checks versions" @@ -346,7 +346,7 @@ test_4d() { # former test_0k client_evicted $CLIENT1 || error "$CLIENT1 not evicted" if ! do_node $CLIENT1 $CHECKSTAT -g \\\#$UID $file; then - error "setattr of GID succeeded unexpectedly" + error_and_remount "setattr of GID succeeded unexpectedly" fi } run_test 4d "setattr of GID checks versions" @@ -384,7 +384,7 @@ test_4f() { # former test_0m client_evicted $CLIENT1 || error "$CLIENT1 not evicted" if ! do_node $CLIENT1 $CHECKSTAT -p 0644 $file; then - error "setattr of permission succeeded unexpectedly" + error_and_remount "setattr of permission succeeded unexpectedly" fi } run_test 4f "setattr of permission checks versions" @@ -513,7 +513,7 @@ test_4k() { # former test_0r error "time not changed: pre $mtime_pre, post $mtime_post" fi if ! do_node $CLIENT1 $CHECKSTAT -s 1 $file; then - error "setattr of size failed" + error_and_remount "setattr of size failed" fi mtime=$(do_node $CLIENT1 stat --format=%Y $file) if (($mtime != $mtime_post)); then @@ -562,7 +562,7 @@ test_5b() { # former test_0t client_evicted $CLIENT1 || error "$CLIENT1 not evicted" if ! do_node $CLIENT1 $CHECKSTAT -a $DIR/$tdir/$tfile; then - error "link should fail" + error_and_remount "link should fail" fi } run_test 5b "link checks version of target parent" @@ -585,7 +585,7 @@ test_5c() { # former test_0u client_evicted $CLIENT1 || error "$CLIENT1 not evicted" if ! do_node $CLIENT1 $CHECKSTAT -a $DIR/$tdir/$tfile; then - error "link should fail" + error_and_remount "link should fail" fi } run_test 5c "link checks version of source" @@ -644,7 +644,7 @@ test_6c() { # former test_0x client_evicted $CLIENT1 || error "$CLIENT1 not evicted" if do_node $CLIENT1 $CHECKSTAT -a $DIR/$tfile; then - error "rename should fail" + error_and_remount "rename should fail" fi } run_test 6c "rename checks version of source parent" @@ -667,7 +667,7 @@ test_6d() { # former test_0y client_evicted $CLIENT1 || error "$CLIENT1 not evicted" if do_node $CLIENT1 $CHECKSTAT -a $DIR/$tfile; then - error "rename should fail" + error_and_remount "rename should fail" fi } run_test 6d "rename checks version of target parent" diff --git a/lustre/tests/test-framework.sh b/lustre/tests/test-framework.sh index c296249..34959ed 100644 --- a/lustre/tests/test-framework.sh +++ b/lustre/tests/test-framework.sh @@ -3681,6 +3681,12 @@ error_ignore() { error_noexit "$@" } +error_and_remount() { + error_noexit "$@" + remount_client $MOUNT + exit 1 +} + skip_env () { $FAIL_ON_SKIP_ENV && error false $@ || skip $@ } -- 1.8.3.1