lfs getstripe $DIR/$tfile || return 1
rm -f $DIR/$tfile || return 2 # make it an orphan
mds_evict_client
- df -P $DIR || df -P $DIR || true # reconnect
+ client_up || client_up || true # reconnect
fail $SINGLEMDS # start orphan recovery
- df -P $DIR || df -P $DIR || true # reconnect
wait_recovery_complete $SINGLEMDS || error "MDS recovery not done"
wait_mds_ost_sync || return 3
AFTERUSED=`df -P $DIR | tail -1 | awk '{ print $3 }'`
ls -la $DIR/$tfile
mds_evict_client
-
- df -P $DIR || df -P $DIR || true # reconnect
+ client_up || client_up || true # reconnect
kill -USR1 $pid
wait $pid || return 1
multiop_bg_pause $DIR/$tfile O_c || return 3
pid2=$!
mds_evict_client
- df $MOUNT || sleep 1 && df $MOUNT || return 1
+ client_up || client_up || return 1
kill -USR1 $pid1
kill -USR1 $pid2
wait $pid1 || return 4
# OBD_FAIL_OST_CREATE_NET 0x204
fail ost1
do_facet ost1 "lctl set_param fail_loc=0x80000204"
- df $MOUNT || return 2
+ client_up || return 2
# let the MDS discover the OST failure, attempt to recover, fail
# and recover again.
# OBD_FAIL_OST_EROFS 0x216
facet_failover $SINGLEMDS
do_facet ost1 "lctl set_param fail_loc=0x80000216"
- df $MOUNT || return 2
+ client_up || return 2
createmany -o $DIR/$tfile 20 20 || return 2
unlinkmany $DIR/$tfile 40 || return 3
createmany -o $DIR/$tdir/$tfile- 25
#define OBD_FAIL_TGT_REPLAY_DROP 0x707
do_facet $SINGLEMDS "lctl set_param fail_loc=0x80000707"
- facet_failover $SINGLEMDS
- df $MOUNT || return 1
+ fail $SINGLEMDS
do_facet $SINGLEMDS "lctl set_param fail_loc=0"
unlinkmany $DIR/$tdir/$tfile- 25 || return 2
return 0
mount_facet ost1
touch $DIR/$tfile || return 1
rm $DIR/$tfile || return 2
- client_df || error "df failed: $?"
+ clients_up || error "client evicted: $?"
return 0
}
run_test 74 "Ensure applications don't fail waiting for OST recovery"
PID=$!
mds_evict_client
wait $PID
- df -P $DIR || df -P $DIR || true # reconnect
+ client_up || client_up || true # reconnect
}
run_test 84a "stale open during export disconnect"