-test_21() {
- mdc1dev=`find_dev_for_fs_and_mds 1 mds1`
- mdc2dev=`find_dev_for_fs_and_mds 2 mds1`
- multiop $MOUNT1/f21 O
- cancel_lru_locks MDC
- # generate IT_OPEN to be replayed against existing file
- multiop $MOUNT1/f21 o_Sc &
- pid=$!
-
- # IT_OPEN will be committed by the failover time
- replay_barrier mds1
-
- # generate MDS_REINT_UNLINK to be replayed
- rm -f $MOUNT2/f21 || return 1
-
- # disable recovery on the both clients
- $LCTL --device %$mdc1dev disable_recovery
- $LCTL --device %$mdc2dev disable_recovery
- facet_failover mds1
-
- # let unlink to be replayed first
- $LCTL --device %$mdc2dev enable_recovery
- sleep $((TIMEOUT/2))
-
- # now let open to be replaye
- $LCTL --device %$mdc1dev enable_recovery
- kill -USR1 $pid
- wait $pid || return 2
-}
-run_test 21 "open vs. unlink out of order replay"
-
-test_22() { # bug 6063 - AST during recovery
- cancel_lru_locks MDC
- cat /proc/fs/lustre/ldlm/namespaces/mds-*/lock_count
- mdc1dev=`find_dev_for_fs_and_mds 1 mds1`
- mdc2dev=`find_dev_for_fs_and_mds 2 mds1`
- $LCTL --device %$mdc1dev disable_recovery
- $LCTL --device %$mdc2dev disable_recovery
-
- replay_barrier mds1
- mknod $MOUNT1/${tdir}-1 c 0 0 # client1: request to be replayed
- ls $MOUNT2 # client2: take lock needed for
- facet_failover mds1
-
- # let's recover 2nd connection with granted UPDATE lock
- $LCTL --device %$mdc2dev enable_recovery
- sleep $((TIMEOUT / 2))
-
- LOCKS=`grep -v '^0$' /proc/fs/lustre/ldlm/namespaces/mds-*/lock_count`
- if [ "$LOCKS" != "" ]; then
- echo "The lock got replayed before mkdir is replayed: $LOCKS"
- $LCTL --device %$mdc1dev enable_recovery
- return 1
- fi
-
- # let's recover 1st connection with mkdir replay that needs the lock
- $LCTL --device %$mdc1dev enable_recovery
- sleep $TIMEOUT
-
- df $MOUNT || return 2
- return 0
+test_19() { # Bug 10991 - resend of open request does not fail assertion.
+ replay_barrier $SINGLEMDS
+ drop_ldlm_reply "createmany -o $DIR/$tfile 1" || return 1
+ fail $SINGLEMDS
+ checkstat $DIR2/${tfile}0 || return 2
+ rm $DIR/${tfile}0 || return 3
+
+ return 0