From 2b40309288f9c90ad78a269b4ad98f2355524c5b Mon Sep 17 00:00:00 2001
From: shadow <shadow>
Date: Thu, 30 Apr 2009 03:21:59 +0000
Subject: [PATCH] don't leak transno for recovery. Branch HEAD b=19085 i=rread
 i=adilger

---
 lustre/tests/replay-single.sh  | 25 ++++++++++++++++---------
 lustre/tests/test-framework.sh |  6 +++---
 2 files changed, 19 insertions(+), 12 deletions(-)

diff --git a/lustre/tests/replay-single.sh b/lustre/tests/replay-single.sh
index 9f04ca5c4a..692c82e870 100755
--- a/lustre/tests/replay-single.sh
+++ b/lustre/tests/replay-single.sh
@@ -1826,7 +1826,7 @@ test_70b () {
 
 	zconf_mount_clients $clients $DIR
 	
-	local duration=120
+	local duration=300
 	[ "$SLOW" = "no" ] && duration=60
 	local cmd="rundbench 1 -t $duration"
 	local PID=""
@@ -1836,14 +1836,21 @@ test_70b () {
 		LCTL=$LCTL $cmd" &
 	PID=$!
 	log "Started rundbench load PID=$PID ..."
-
-	sleep $((duration / 4))
-	replay_barrier $SINGLEMDS
-	sleep 3 # give clients a time to do operations
-
-	log "$TESTNAME fail mds 1"
-	fail $SINGLEMDS
-
+	ELAPSED=0
+	NUM_FAILOVERS=0
+	START_TS=$(date +%s)
+	CURRENT_TS=$START_TS
+	while [ $ELAPSED -lt $duration ]; do
+		sleep 1
+		replay_barrier $SINGLEMDS
+		sleep 1 # give clients a time to do operations
+		# Increment the number of failovers
+		NUM_FAILOVERS=$((NUM_FAILOVERS+1))
+		log "$TESTNAME fail mds1 $NUM_FAILOVERS times"
+		facet_failover $SINGLEMDS
+		CURRENT_TS=$(date +%s)
+		ELAPSED=$((CURRENT_TS - START_TS))
+	done
 	wait $PID || error "rundbench load on $CLIENTS failed!"
 }
 run_test 70b "mds recovery; $CLIENTCOUNT clients"
diff --git a/lustre/tests/test-framework.sh b/lustre/tests/test-framework.sh
index 3bac3435c2..7d74263bbb 100644
--- a/lustre/tests/test-framework.sh
+++ b/lustre/tests/test-framework.sh
@@ -1131,8 +1131,8 @@ replay_barrier() {
     do_facet $facet sync
     df $MOUNT
     local svc=${facet}_svc
-    do_facet $facet $LCTL --device %${!svc} readonly
     do_facet $facet $LCTL --device %${!svc} notransno
+    do_facet $facet $LCTL --device %${!svc} readonly
     do_facet $facet $LCTL mark "$facet REPLAY BARRIER on ${!svc}"
     $LCTL mark "local REPLAY BARRIER on ${!svc}"
 }
@@ -1142,8 +1142,8 @@ replay_barrier_nodf() {
     do_facet $facet sync
     local svc=${facet}_svc
     echo Replay barrier on ${!svc}
-    do_facet $facet $LCTL --device %${!svc} readonly
     do_facet $facet $LCTL --device %${!svc} notransno
+    do_facet $facet $LCTL --device %${!svc} readonly
     do_facet $facet $LCTL mark "$facet REPLAY BARRIER on ${!svc}"
     $LCTL mark "local REPLAY BARRIER on ${!svc}"
 }
@@ -1152,8 +1152,8 @@ replay_barrier_nosync() {
     local facet=$1    echo running=${running}
     local svc=${facet}_svc
     echo Replay barrier on ${!svc}
-    do_facet $facet $LCTL --device %${!svc} readonly
     do_facet $facet $LCTL --device %${!svc} notransno
+    do_facet $facet $LCTL --device %${!svc} readonly
     do_facet $facet $LCTL mark "$facet REPLAY BARRIER on ${!svc}"
     $LCTL mark "local REPLAY BARRIER on ${!svc}"
 }
-- 
GitLab