Whamcloud - gitweb
LU-15060 tests: sanity-flr test_208[a,b] fix 30/45130/3
authorElena Gryaznova <elena.gryaznova@hpe.com>
Tue, 5 Oct 2021 17:08:59 +0000 (20:08 +0300)
committerOleg Drokin <green@whamcloud.com>
Sun, 17 Oct 2021 18:12:00 +0000 (18:12 +0000)
sanity-flr  test_208a  and test_208b failed as:
  test_208a returned 2
  test_208b returned 2
on Lustre setup where osts are located not on one host
because of stack_trap "do_nodes $osts $LCTL set_param $old"
returns 2. Let's use save_lustre_params() instead of trying to
set not-existing parameters.

Fixes: 8507472dd37e ("LU-14996 lov: prefer mirrors on non-rotational OSTs")
Test-Parameters: trivial testlist=sanity-flr env=ONLY=208
Signed-off-by: Elena Gryaznova <elena.gryaznova@hpe.com>
Change-Id: I19cedc0a9745d0d112ac05fe3a800347ab4c40d3
Reviewed-on: https://review.whamcloud.com/45130
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Vladimir Saveliev <vlaidimir.saveliev@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/tests/sanity-flr.sh

index d9f677e..803617d 100644 (file)
@@ -3754,9 +3754,10 @@ test_208a() {
 
        (( $OSTCOUNT >= 4 )) || skip_env "needs >= 4 OSTs"
 
-       old=$(do_nodes $(comma_list $(osts_nodes)) \
-               $LCTL get_param osd*.*OST*.nonrotational | tr '\n' ' ')
-       stack_trap "do_nodes $osts $LCTL set_param $old"
+       local p="$TMP/$TESTSUITE-$TESTNAME.parameters"
+
+       save_lustre_params $(get_facets OST) osd*.*OST*.nonrotational > $p
+       stack_trap "restore_lustre_params < $p; rm -f $p"
 
        stack_trap "rm -f $tf"
        $LFS setstripe -i0 -c1 $tf || error "can't setstripe"
@@ -3767,12 +3768,12 @@ test_208a() {
        $LFS getstripe $tf
 
        log "set OST0000 non-rotational"
-       do_nodes $(comma_list $(osts_nodes)) \
+       do_nodes $osts \
                $LCTL set_param osd*.*OST0000*.nonrotational=1
        check_ost_used $tf read 0
 
        log "set OST0002 and OST0003 non-rotational, two fast OSTs is better"
-       do_nodes $(comma_list $(osts_nodes)) \
+       do_nodes $osts \
                $LCTL set_param osd*.*OST0002*.nonrotational=1 \
                        osd*.*OST0003*.nonrotational=1
        check_ost_used $tf read 2 3
@@ -3790,9 +3791,10 @@ test_208b() {
 
        (( $OSTCOUNT >= 4 )) || skip_env "needs >= 4 OSTs"
 
-       old=$(do_nodes $(comma_list $(osts_nodes)) \
-               $LCTL get_param osd*.*OST*.nonrotational | tr '\n' ' ')
-       stack_trap "do_nodes $osts $LCTL set_param $old"
+       local p="$TMP/$TESTSUITE-$TESTNAME.parameters"
+
+       save_lustre_params $(get_facets OST) osd*.*OST*.nonrotational > $p
+       stack_trap "restore_lustre_params < $p; rm -f $p"
 
        stack_trap "rm -f $tf"
        $LFS setstripe -i0 -c1 $tf || error "can't setstripe"
@@ -3803,13 +3805,13 @@ test_208b() {
        $LFS getstripe $tf | grep -q flags.*stale && error "still stale"
 
        log "set OST0000 non-rotational"
-       do_nodes $(comma_list $(osts_nodes)) \
+       do_nodes $osts \
                $LCTL set_param osd*.*OST0000*.nonrotational=1
        check_ost_used $tf write 0
        $LFS mirror resync $tf || error "can't resync"
 
        log "set OST0002 and OST0003 non-rotational, two fast OSTs is better"
-       do_nodes $(comma_list $(osts_nodes)) \
+       do_nodes $osts \
                $LCTL set_param osd*.*OST0002*.nonrotational=1 \
                        osd*.*OST0003*.nonrotational=1
        check_ost_used $tf write 2 3