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
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"
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 &
#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)"
}
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