[[ "$rs" == "ost1" ]] ||
error "file content error: expected: \"ost1\", actual: \"$rs\""
- wait_osc_import_state client ost2 FULL
+ wait_osc_import_ready client ost2
}
run_test 33 "read can choose available mirror to read"
local osts=$(comma_list $(osts_nodes))
- # define OBD_FAIL_OST_SKIP_LV_CHECK 0x241
- do_nodes $osts lctl set_param fail_loc=0x241
-
- mirror_io copy -i ${mirror_array[0]} \
- -t $(echo ${mirror_array[@]:1} | tr ' ' ',') $tf ||
- error "mirror copy error"
-
- do_nodes $osts lctl set_param fail_loc=0
+ $LFS mirror copy -i ${mirror_array[0]} -o-1 $tf ||
+ error "mirror copy error"
# verify copying is successful by checking checksums
remount_client $MOUNT
for i in ${mirror_array[@]}; do
sum=$($LFS mirror read -N $i $tf | md5sum)
[ "$sum" = "${checksums[1]}" ] ||
- error "$i: mismatch checksum after copy"
+ error "$i: mismatch checksum after copy \'$sum\'"
done
rm -f $tf
run_test 44 "lfs mirror split check"
test_45() {
- [ $OSTCOUNT -lt 2 ] && skip "needs >= 2 OSTs" && return
+ [ $OSTCOUNT -lt 2 ] && skip "needs >= 2 OSTs"
local file=$DIR/$tdir/$tfile
local dir=$DIR/$tdir/$dir
-N -E3m -S1m -Eeof -N -E8m -Eeof $file ||
error "Create $file failed"
- echo "getstripe --yaml $file"
- $LFS getstripe --yaml $file > $temp || error "getstripe $file failed"
- echo "setstripe --yaml=$temp $file.2"
- $LFS setstripe --yaml=$temp $file.2 || error "setstripe $file.2 failed"
+ verify_yaml_layout $file $file.copy $temp "1. FLR file"
+ rm -f $file $file.copy
- echo "compare layout"
- local layout1=$(get_layout_param $file)
- local layout2=$(get_layout_param $file.2)
- [ "$layout1" == "$layout2" ] ||
- error "FLR file $file/$file.2 layouts are not equal"
+ $LFS setstripe -N -E1m -S1m -c2 -o0,1 -E2m -Eeof -N -E4m -Eeof \
+ -N -E3m -S1m -Eeof -N -E8m --flags=prefer -Eeof $file ||
+ error "Create $file failed"
+
+ verify_yaml_layout $file $file.copy $temp "2. FLR file with flags"
}
run_test 45 "Verify setstripe/getstripe with YAML with FLR file"