Whamcloud - gitweb
file export-do_kern_mount.patch was initially added on branch b1_5.
[fs/lustre-release.git] / lustre / tests / replay-single.sh
index 41aabf3..06e2ab6 100755 (executable)
@@ -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