]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
qa/osd-bluefs-volume-ops: retry data writing if spillover hasn't
authorIgor Fedotov <ifedotov@suse.com>
Tue, 28 Sep 2021 16:52:37 +0000 (19:52 +0300)
committerIgor Fedotov <ifedotov@suse.com>
Tue, 2 Nov 2021 14:26:39 +0000 (17:26 +0300)
happened.

Fixes: https://tracker.ceph.com/issues/52676
Signed-off-by: Igor Fedotov <ifedotov@suse.com>
qa/standalone/osd/osd-bluefs-volume-ops.sh

index 3e92d17dba3ee857fc38ee56bd29bc22f04ad90b..c0235ef6772e5ab0be1319bce628c8df97369a8b 100755 (executable)
@@ -365,13 +365,19 @@ function TEST_bluestore2() {
     sleep 5
     create_pool foo 16
 
-    # write some objects
-    timeout 60 rados bench -p foo 10 write --write-omap --no-cleanup #|| return 1
-
-    #give RocksDB some time to cooldown and put files to slow level(s)
-    sleep 10
-
-    spilled_over=$( ceph tell osd.0 perf dump bluefs | jq ".bluefs.slow_used_bytes" )
+    retry = 0
+    while [[ $retry -le 5 ]]; do
+      # write some objects
+      timeout 60 rados bench -p foo 10 write --write-omap --no-cleanup #|| return 1
+
+      #give RocksDB some time to cooldown and put files to slow level(s)
+      sleep 10
+
+      db_used=$( ceph tell osd.0 perf dump bluefs | jq ".bluefs.db_used_bytes" )
+      spilled_over=$( ceph tell osd.0 perf dump bluefs | jq ".bluefs.slow_used_bytes" )
+      ((retry+=1))
+      test $spilled_over -eq 0 || break
+    done
     test $spilled_over -gt 0 || return 1
 
     while kill $osd_pid0; do sleep 1 ; done