#!/bin/bash
-# -*- mode: Bash; tab-width: 4; indent-tabs-mode: t; -*-
-# vim:shiftwidth=4:softtabstop=4:tabstop=4:
set -e
-# bug number:
-ALWAYS_EXCEPT=" $REPLAY_VBR_EXCEPT"
-
-SAVE_PWD=$PWD
-LUSTRE=${LUSTRE:-$(cd $(dirname $0)/..; echo $PWD)}
-SETUP=${SETUP:-}
-CLEANUP=${CLEANUP:-}
MOUNT_2=${MOUNT_2:-"yes"}
-export MULTIOP=${MULTIOP:-multiop}
+
+LUSTRE=${LUSTRE:-$(dirname $0)/..}
. $LUSTRE/tests/test-framework.sh
-init_test_env $@
-. ${CONFIG:=$LUSTRE/tests/cfg/$NAME.sh}
+init_test_env "$@"
init_logging
remote_mds_nodsh && log "SKIP: remote MDS with nodsh" && exit 0
+ALWAYS_EXCEPT=" $REPLAY_VBR_EXCEPT"
+
# ~6 (min)"
-[ "$SLOW" = "no" ] && EXCEPT_SLOW="7"
+[ "$SLOW" = "no" ] && EXCEPT_SLOW="7 "
build_test_filter
cos_param_file=$TMP/rvbr-cos-params
save_lustre_params $(get_facets MDS) "mdt.*.commit_on_sharing" > $cos_param_file
+force_new_seq mds1
+
test_0a() {
local ver=$(get_version $CLIENT1 $DIR/$tdir/1a)
do_facet $SINGLEMDS "$LCTL set_param mdd.${!var}.sync_permission=0"
do_facet $SINGLEMDS "$LCTL set_param mdt.${!var}.commit_on_sharing=0"
- do_node $CLIENT1 mkdir -p -m 755 $MOUNT/$tdir
+ do_node $CLIENT1 $LFS mkdir -i 0 -c 1 $MOUNT/$tdir
replay_barrier $SINGLEMDS
do_node $CLIENT2 chmod 777 $MOUNT2/$tdir
do_facet $SINGLEMDS "$LCTL set_param mdd.${!var}.sync_permission=0"
do_facet $SINGLEMDS "$LCTL set_param mdt.${!var}.commit_on_sharing=0"
- do_node $CLIENT1 mkdir -p -m 755 $DIR/$tdir
+ do_node $CLIENT1 $LFS mkdir -i 0 -c 1 $MOUNT/$tdir
replay_barrier $SINGLEMDS
do_node $CLIENT2 chmod 777 $MOUNT2/$tdir
do_facet $SINGLEMDS "$LCTL set_param mdd.${!var}.sync_permission=0"
do_facet $SINGLEMDS "$LCTL set_param mdt.${!var}.commit_on_sharing=0"
- do_node $CLIENT1 mkdir -p -m 755 $DIR/$tdir
+ do_node $CLIENT1 $LFS mkdir -i 0 -c 1 $MOUNT/$tdir
do_node $CLIENT1 mcreate $DIR/$tdir/$tfile
replay_barrier $SINGLEMDS
local tp_post
do_node $CLIENT1 mcreate $DIR/$tfile
- do_node $CLIENT1 mkdir -p $DIR/$tdir
+ do_node $CLIENT1 $LFS mkdir -i 0 -c 1 $DIR/$tdir
pre=$(chk_get_version $CLIENT1 $DIR/$tfile)
tp_pre=$(chk_get_version $CLIENT1 $DIR/$tdir)
do_node $CLIENT1 link $DIR/$tfile $DIR/$tdir/$tfile
do_facet $SINGLEMDS "$LCTL set_param mdt.${!var}.commit_on_sharing=0"
do_node $CLIENT1 mcreate $DIR/$tfile
- do_node $CLIENT1 mkdir -p -m 755 $DIR/$tdir
+ do_node $CLIENT1 $LFS mkdir -i 0 -c 1 $MOUNT/$tdir
replay_barrier $SINGLEMDS
do_node $CLIENT2 chmod 777 $MOUNT2/$tdir
do_facet $SINGLEMDS "$LCTL set_param mdt.${!var}.commit_on_sharing=0"
do_node $CLIENT1 openfile -f O_RDWR:O_CREAT -m 0644 $DIR/$tfile
- do_node $CLIENT1 mkdir -p $DIR/$tdir
+ do_node $CLIENT1 $LFS mkdir -i 0 -c 1 $MOUNT/$tdir
replay_barrier $SINGLEMDS
do_node $CLIENT2 chmod 666 $MOUNT2/$tfile
local tp_post
do_node $CLIENT1 mcreate $DIR/$tfile
- do_node $CLIENT1 mkdir -p $DIR/$tdir
+ do_node $CLIENT1 $LFS mkdir -i 0 -c 1 $MOUNT/$tdir
sp_pre=$(chk_get_version $CLIENT1 $DIR)
tp_pre=$(chk_get_version $CLIENT1 $DIR/$tdir)
do_node $CLIENT1 mv $DIR/$tfile $DIR/$tdir/$tfile
do_facet $SINGLEMDS "$LCTL set_param mdt.${!var}.commit_on_sharing=0"
do_node $CLIENT1 mcreate $DIR/$tfile
- do_node $CLIENT1 mkdir -p -m 755 $DIR/$tdir
+ do_node $CLIENT1 $LFS mkdir -i 0 -c 1 $MOUNT/$tdir
replay_barrier $SINGLEMDS
do_node $CLIENT2 chmod 777 $MOUNT2
do_facet $SINGLEMDS "$LCTL set_param mdt.${!var}.commit_on_sharing=0"
do_node $CLIENT1 mcreate $DIR/$tfile
- do_node $CLIENT1 mkdir -p -m 755 $DIR/$tdir
+ do_node $CLIENT1 $LFS mkdir -i 0 -c 1 $MOUNT/$tdir
replay_barrier $SINGLEMDS
do_node $CLIENT2 chmod 777 $MOUNT2/$tdir
do_facet $SINGLEMDS "$LCTL set_param mdd.${!var}.sync_permission=0"
do_facet $SINGLEMDS "$LCTL set_param mdt.${!var}.commit_on_sharing=0"
- do_node $CLIENT1 mkdir -p $DIR/$tdir
+ do_node $CLIENT1 $LFS mkdir -i 0 -c 1 $MOUNT/$tdir
replay_barrier $SINGLEMDS
# first operation
echo "$cname first: $first"
}
test_7a() {
- first="createmany -o $DIR/$tdir/$tfile- 1"
- lost="rm $MOUNT2/$tdir/$tfile-0"
- last="createmany -o $DIR/$tdir/$tfile- 1"
- test_7_cycle "$first" "$lost" "$last" || error "Test 7a.1 failed"
+ first="createmany -o $DIR/$tdir/$tfile- 1"
+ lost="rm $MOUNT2/$tdir/$tfile-0"
+ last="createmany -o $DIR/$tdir/$tfile- 1"
+ test_7_cycle "$first" "$lost" "$last" || error "Test 7a.1 failed"
- first="createmany -o $DIR/$tdir/$tfile- 1"
- lost="rm $MOUNT2/$tdir/$tfile-0"
- last="mkdir $DIR/$tdir/$tfile-0"
- test_7_cycle "$first" "$lost" "$last" || error "Test 7a.2 failed"
+ first="createmany -o $DIR/$tdir/$tfile- 1"
+ lost="rm $MOUNT2/$tdir/$tfile-0"
+ last="$LFS mkdir -i 0 -c 1 $DIR/$tdir/$tfile-0"
+ test_7_cycle "$first" "$lost" "$last" || error "Test 7a.2 failed"
- first="mkdir $DIR/$tdir/$tfile-0"
- lost="mv $MOUNT2/$tdir/$tfile-0 $MOUNT2/$tdir/$tfile-1"
- last="createmany -o $DIR/$tdir/$tfile- 1"
- test_7_cycle "$first" "$lost" "$last" || error "Test 7a.3 failed"
- return 0
+ first="mkdir $DIR/$tdir/$tfile-0"
+ lost="mv $MOUNT2/$tdir/$tfile-0 $MOUNT2/$tdir/$tfile-1"
+ last="createmany -o $DIR/$tdir/$tfile- 1"
+ test_7_cycle "$first" "$lost" "$last" || error "Test 7a.3 failed"
+ return 0
}
run_test 7a "create, {lost}, create"
local post
local var=${SINGLEMDS}_svc
- [ -n "$CLIENTS" ] || { skip "Need two or more clients" && exit 0; }
[ $CLIENTCOUNT -ge 2 ] || \
{ skip "Need two or more clients, have $CLIENTCOUNT" && \
exit 0; }