]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
test: Avoid races by waiting for PGs go clean before query 37815/head
authorDavid Zafman <dzafman@redhat.com>
Tue, 29 Sep 2020 18:03:10 +0000 (18:03 +0000)
committerNathan Cutler <ncutler@suse.com>
Mon, 26 Oct 2020 20:39:25 +0000 (21:39 +0100)
Fixes: https://tracker.ceph.com/issues/46405
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 3ba7ebd3e299587b3828a7f794f070d3d01da4c4)

qa/standalone/osd/osd-rep-recov-eio.sh

index 23c3a3577a7a4e308123e1e5b9783ae9b0a14dc3..332a61acf0828d04dfbb1b68813a67c886ea87f5 100755 (executable)
@@ -120,6 +120,7 @@ function rados_get_data() {
     inject_$inject rep data $poolname $objname $dir 0 || return 1
     rados_get $dir $poolname $objname || return 1
 
+    wait_for_clean
     COUNT=$(ceph pg $pgid query | jq '.info.stats.stat_sum.num_objects_repaired')
     test "$COUNT" = "1" || return 1
     flush_pg_stats
@@ -142,6 +143,7 @@ function rados_get_data() {
     inject_$inject rep data $poolname $objname $dir 2 || return 1
     rados_get $dir $poolname $objname || return 1
 
+    wait_for_clean
     COUNT=$(ceph pg $pgid query | jq '.info.stats.stat_sum.num_objects_repaired')
     test "$COUNT" = "3" || return 1
     flush_pg_stats
@@ -153,6 +155,7 @@ function rados_get_data() {
     inject_$inject rep data $poolname $objname $dir 2 || return 1
     rados_get $dir $poolname $objname hang || return 1
 
+    wait_for_clean
     # After hang another repair couldn't happen, so count stays the same
     COUNT=$(ceph pg $pgid query | jq '.info.stats.stat_sum.num_objects_repaired')
     test "$COUNT" = "3" || return 1
@@ -200,6 +203,7 @@ function TEST_rados_repair_warning() {
     local primary=${object_osds[0]}
     local bad_peer=${object_osds[1]}
 
+    wait_for_clean
     COUNT=$(ceph pg $pgid query | jq '.info.stats.stat_sum.num_objects_repaired')
     test "$COUNT" = "$OBJS" || return 1
     flush_pg_stats
@@ -229,6 +233,7 @@ function TEST_rados_repair_warning() {
        rados_get $dir $poolname ${objbase}-$i || return 1
     done
 
+    wait_for_clean
     COUNT=$(ceph pg $pgid query | jq '.info.stats.stat_sum.num_objects_repaired')
     test "$COUNT" = "$(expr $OBJS \* 2)" || return 1
     flush_pg_stats