Whamcloud - gitweb
LU-14128 lov: correctly set OST obj size
[fs/lustre-release.git] / lustre / tests / sanity-pfl.sh
index b39ea7c..664acc2 100644 (file)
@@ -76,21 +76,58 @@ test_0b() {
 
        test_mkdir $DIR/$tdir
 
+       $LFS setstripe -E -1 -C $LOV_MAX_STRIPE_COUNT $comp_file ||
+               error "Create $comp_file failed"
+
+       local count=$($LFS getstripe -I1 -c $comp_file)
+       [ $count -eq $LOV_MAX_STRIPE_COUNT ] ||
+               error "stripe count of first component is shrinked to $count"
+
+       rm -f $comp_file || error "Delete $comp_file failed"
+
        # Create file with 1.1*LOV_MAX_STRIPE_COUNT stripes should succeed
        $LFS setstripe -E 1m -C $((LOV_MAX_STRIPE_COUNT / 10)) -E -1 \
                -C $LOV_MAX_STRIPE_COUNT $comp_file ||
-       error "Create $comp_file failed"
+               error "Create $comp_file failed"
+
+       local count=$($LFS getstripe -I2 -c $comp_file)
+       [ $count -eq $LOV_MAX_STRIPE_COUNT ] ||
+               error "stripe count of second component is shrinked to $count"
 
        rm -f $comp_file || error "Delete $comp_file failed"
 
-       # Create file with 2*LOV_MAX_STRIPE_COUNT stripes should fail
-       $LFS setstripe -E 1m -C $LOV_MAX_STRIPE_COUNT -E -1 -C $LOV_MAX_STRIPE_COUNT \
-               $comp_file && error "Create $comp_file succeeded"
+       # Create file with 3*LOV_MAX_STRIPE_COUNT stripes should fail
+       $LFS setstripe -E 200G -C $LOV_MAX_STRIPE_COUNT \
+               -E 500G -C $LOV_MAX_STRIPE_COUNT \
+               -E -1 -C $LOV_MAX_STRIPE_COUNT $comp_file &&
+               error "Create $comp_file succeeded"
 
        rm -f $comp_file || error "Delete $comp_file failed"
 }
 run_test 0b "Verify comp stripe count limits"
 
+test_0c() {
+       [[ $($LCTL get_param mdc.*.import |
+               grep "connect_flags:.*overstriping") ]] ||
+               skip "server does not support overstriping"
+       [ $(lustre_version_code $SINGLEMDS) -lt $(version_code $SEL_VER) ] &&
+               skip "skipped for lustre < $SEL_VER"
+
+       large_xattr_enabled || skip_env "no large xattr support"
+
+       local comp_file=$DIR/$tdir/$tfile
+
+       test_mkdir $DIR/$tdir
+
+       $LFS setstripe -E -1 -C $LOV_MAX_STRIPE_COUNT -z 128M $comp_file ||
+               error "Create $comp_file failed"
+
+       local count=$($LFS getstripe -I1 -c $comp_file)
+       [ $count -eq $LOV_MAX_STRIPE_COUNT ] ||
+               error "stripe count is shrinked to $count"
+}
+run_test 0c "Verify SEL comp stripe count limits"
+
 test_1a() {
        local comp_file=$DIR/$tdir/$tfile
        local rw_len=$((3 * 1024 * 1024))       # 3M
@@ -519,7 +556,7 @@ test_10() {
 }
 run_test 10 "Inherit composite template from root"
 
-test_11() {
+test_11a() {
        local comp_file=$DIR/$tdir/$tfile
        test_mkdir $DIR/$tdir
        rm -f $comp_file
@@ -570,7 +607,22 @@ test_11() {
 
        return 0
 }
-run_test 11 "Verify component instantiation with write/truncate"
+run_test 11a "Verify component instantiation with write/truncate"
+
+test_11b() {
+       [ $OSTCOUNT -lt 4 ] && skip "needs >= 4 OSTs"
+
+       local file=$DIR/$tdir/$tfile
+
+       test_mkdir $DIR/$tdir
+       rm -f $file
+
+       $LFS setstripe -E 1m -E 1g -c 4 -E eof $DIR/$tdir ||
+               error "setstripe dir $DIR/$tdir failed"
+       expand_truncate_test $file ||
+               error "expand_truncate_test failed on $file"
+}
+run_test 11b "truncate file set file size correctly"
 
 test_12() {
        [ $OSTCOUNT -lt 3 ] && skip "needs >= 3 OSTs"