X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Ftests%2Freplay-single.sh;h=06e2ab64051c6e1ffd8ea6cd8ffdc2e8af0861e0;hb=e52a140eb7f65a63f07dbb7e2aaff7f9e22974f2;hp=41aabf360cd635190fd9a4086809c4728f742bcf;hpb=87d92f4af2b977a811037033c8c7e9f89a5fc32a;p=fs%2Flustre-release.git diff --git a/lustre/tests/replay-single.sh b/lustre/tests/replay-single.sh index 41aabf3..06e2ab6 100755 --- a/lustre/tests/replay-single.sh +++ b/lustre/tests/replay-single.sh @@ -40,12 +40,9 @@ gen_config() { MDS=lmv1 else add_mds $SINGLEMDS --dev $MDSDEV --size $MDSSIZE - if [ ! -z "$$SINGLEMDSfailover_HOST" ]; then - add_mdsfailover $SINGLEMDS --dev $MDSDEV --size $MDSSIZE - fi add_lov lov1 $SINGLEMDS --stripe_sz $STRIPE_BYTES \ --stripe_cnt $STRIPES_PER_OBJ --stripe_pattern 0 - MDS=$SINGLEMDS_svc + MDS=$SINGLEMDS fi add_ost ost --lov lov1 --dev $OSTDEV --size $OSTSIZE @@ -702,13 +699,15 @@ test_32() { pid1=$! multiop $DIR/$tfile O_c & pid2=$! - # give multiop a chance to open - sleep 1 + # give multiop a chance to open. + # 1 second is not enough, I increased it to 5, however in ideal word + # I should have to wait for open finish in more smart manner. --umka + sleep 5 mds_evict_client df $MOUNT || sleep 1 && df $MOUNT || return 1 kill -USR1 $pid1 kill -USR1 $pid2 - sleep 1 + sleep 5 return 0 } run_test 32 "close() notices client eviction; close() after client eviction" @@ -1055,8 +1054,11 @@ test_51b() { mkdir -p $DIR/$tdir-2 multiop $DIR/$tdir-1/f O_c & pid=$! + # give multiop a chance to open - sleep 1 + # 1 second seems to be not enough, we met already such a cases + # --umka + sleep 5 do_facet $SINGLEMDS "sysctl -w lustre.fail_loc=0x80000107" touch $DIR/${tdir}-2/f & @@ -1274,7 +1276,6 @@ test_55() { #drop_reply "cat $DIR/$tfile" fail $SINGLEMDS sleep 10 - lctl dk /r/tmp/debug } run_test 55 "don't replay a symlink open request (3440)" @@ -1293,6 +1294,38 @@ test_56() { } run_test 56 "let MDS_CHECK_RESENT return the original return code instead of 0" +#b7312 LASSERT(!IS_ERR(parent)) in reconstruct_open() +test_57() { + mkdir $DIR/$tdir || return 1 + touch $DIR/$tdir/$tfile || return 2 + multiop $DIR/$tdir/$tfile o_ & + MULTIPID=$! + sleep 1 + rm -f $DIR/$tdir/$tfile || return 3 + rm -rf $DIR/$tdir || return 4 + # drop first reint reply + sysctl -w lustre.fail_loc=0x0000030c + facet_failover $SINGLEMDS + df $MOUNT || return 1 + kill -USR1 $MULTIPID || return 5 + wait $MULTIPID || return 6 + sysctl -w lustre.fail_loc=0 +} +run_test 57 "open orphan in reconstruct_open()" + +test_58() { + capa=`cat /proc/fs/lustre/mds/mds*/capa` + if [ "$capa" == "0" ]; then + echo "skip testing - no capa enabled" + return 0 + fi + sysctl -w lustre.fail_loc=0x0000030c + rc=multiop $DIR/$tfile Ow + sysctl -w lustre.fail_loc=0 + return rc +} +run_test 58 "open+create resent should return capa" + equals_msg test complete, cleaning up $CLEANUP