From bdf36cf045b53f04ff1338ca12582e6db84dda39 Mon Sep 17 00:00:00 2001 From: Sridhar Seshasayee Date: Thu, 17 Jun 2021 17:49:29 +0530 Subject: [PATCH] qa/standalone/osd-backfill: Modify backfill tests for mclock scheduler Modified test cases: 1. osd-backfill-prio.sh: Set osd_op_queue = wpq for all tests since the mclock doesn't consider recovery priority as part of its scheduling algorithm. 2. osd-backfill-space.sh: Set osd_mclock_profile to high_recovery_ops and increase the wait for backfills timeout to 1200 secs for the following tests: - TEST_backfill_test_simple() - TEST_backfill_test_multi() - TEST_backfill_test_sametarget() - TEST_backfill_multi_partial() - TEST_ec_backfill_simple() - TEST_ec_backfill_multi() - SKIP_TEST_ec_backfill_multi_partial() - SKIP_TEST_ec_backfill_multi_partial() 3. osd-backfill-stats: - TEST_backfill_ec_down_all_out(): Set osd_mclock_profile to high_recovery_ops and increase the wait for recovery timeout to 240 secs. Signed-off-by: Sridhar Seshasayee --- qa/standalone/osd-backfill/osd-backfill-prio.sh | 3 +++ .../osd-backfill/osd-backfill-space.sh | 17 +++++++++-------- .../osd-backfill/osd-backfill-stats.sh | 6 ++++-- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/qa/standalone/osd-backfill/osd-backfill-prio.sh b/qa/standalone/osd-backfill/osd-backfill-prio.sh index c8c05ce19fb95..9749ca34c0da8 100755 --- a/qa/standalone/osd-backfill/osd-backfill-prio.sh +++ b/qa/standalone/osd-backfill/osd-backfill-prio.sh @@ -27,6 +27,9 @@ function run() { CEPH_ARGS+="--fsid=$(uuidgen) --auth-supported=none " CEPH_ARGS+="--mon-host=$CEPH_MON --osd_max_backfills=1 --debug_reserver=20 " CEPH_ARGS+="--osd_min_pg_log_entries=5 --osd_max_pg_log_entries=10 " + # Set osd op queue = wpq for the tests. Backfill priority is not + # considered by mclock_scheduler leading to unexpected results. + CEPH_ARGS+="--osd-op-queue=wpq " export objects=50 export poolprefix=test export FORCE_PRIO="254" # See OSD_BACKFILL_PRIORITY_FORCED diff --git a/qa/standalone/osd-backfill/osd-backfill-space.sh b/qa/standalone/osd-backfill/osd-backfill-space.sh index b2a1a821fdb24..8bc452d6cbbfc 100755 --- a/qa/standalone/osd-backfill/osd-backfill-space.sh +++ b/qa/standalone/osd-backfill/osd-backfill-space.sh @@ -28,6 +28,7 @@ function run() { CEPH_ARGS+="--osd_min_pg_log_entries=5 --osd_max_pg_log_entries=10 " CEPH_ARGS+="--fake_statfs_for_testing=3686400 " CEPH_ARGS+="--osd_max_backfills=10 " + CEPH_ARGS+="--osd_mclock_profile=high_recovery_ops " export objects=600 export poolprefix=test @@ -149,7 +150,7 @@ function TEST_backfill_test_simple() { done sleep 30 - wait_for_not_backfilling 240 || return 1 + wait_for_not_backfilling 1200 || return 1 wait_for_not_activating 60 || return 1 ERRORS=0 @@ -228,7 +229,7 @@ function TEST_backfill_test_multi() { done sleep 30 - wait_for_not_backfilling 240 || return 1 + wait_for_not_backfilling 1200 || return 1 wait_for_not_activating 60 || return 1 ERRORS=0 @@ -380,7 +381,7 @@ function TEST_backfill_test_sametarget() { ceph osd pool set $pool2 size 2 sleep 30 - wait_for_not_backfilling 240 || return 1 + wait_for_not_backfilling 1200 || return 1 wait_for_not_activating 60 || return 1 ERRORS=0 @@ -512,7 +513,7 @@ function TEST_backfill_multi_partial() { ceph osd in osd.$fillosd sleep 30 - wait_for_not_backfilling 240 || return 1 + wait_for_not_backfilling 1200 || return 1 wait_for_not_activating 60 || return 1 flush_pg_stats || return 1 @@ -695,7 +696,7 @@ function TEST_ec_backfill_simple() { ceph pg dump pgs - wait_for_not_backfilling 240 || return 1 + wait_for_not_backfilling 1200 || return 1 wait_for_not_activating 60 || return 1 ceph pg dump pgs @@ -819,7 +820,7 @@ function TEST_ec_backfill_multi() { sleep 30 - wait_for_not_backfilling 240 || return 1 + wait_for_not_backfilling 1200 || return 1 wait_for_not_activating 60 || return 1 ceph pg dump pgs @@ -958,7 +959,7 @@ function SKIP_TEST_ec_backfill_multi_partial() { sleep 30 ceph pg dump pgs - wait_for_not_backfilling 240 || return 1 + wait_for_not_backfilling 1200 || return 1 wait_for_not_activating 60 || return 1 ceph pg dump pgs @@ -1066,7 +1067,7 @@ function SKIP_TEST_ec_backfill_multi_partial() { ceph osd in osd.$fillosd sleep 30 - wait_for_not_backfilling 240 || return 1 + wait_for_not_backfilling 1200 || return 1 wait_for_not_activating 60 || return 1 ERRORS=0 diff --git a/qa/standalone/osd-backfill/osd-backfill-stats.sh b/qa/standalone/osd-backfill/osd-backfill-stats.sh index e63d2e1479c67..f2e5f83dabff6 100755 --- a/qa/standalone/osd-backfill/osd-backfill-stats.sh +++ b/qa/standalone/osd-backfill/osd-backfill-stats.sh @@ -27,6 +27,8 @@ function run() { CEPH_ARGS+="--fsid=$(uuidgen) --auth-supported=none " CEPH_ARGS+="--mon-host=$CEPH_MON " CEPH_ARGS+="--osd_min_pg_log_entries=5 --osd_max_pg_log_entries=10 " + # Use "high_recovery_ops" profile if mclock_scheduler is enabled. + CEPH_ARGS+="--osd-mclock-profile=high_recovery_ops " export margin=10 export objects=200 export poolname=test @@ -674,13 +676,13 @@ function TEST_backfill_ec_down_all_out() { break done ceph pg dump pgs - for i in $(seq 1 60) + for i in $(seq 1 240) do if ceph pg dump pgs | grep ^$PG | grep -qv backfilling then break fi - if [ $i = "60" ]; + if [ $i = "240" ]; then echo "Timeout waiting for recovery to finish" return 1 -- 2.39.5