aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNoah Misch <noah@leadboat.com>2022-07-01 18:27:18 -0700
committerNoah Misch <noah@leadboat.com>2022-07-01 18:27:24 -0700
commit0806cd29be01c837bc2f6b07bf14fb6aa0f4ad80 (patch)
tree9c328c97bbd70390972a1b606db86ca5ce9c23d4 /src
parent37ef8e1dfe37b02212755eb8797d7b2598b46b96 (diff)
downloadpostgresql-0806cd29be01c837bc2f6b07bf14fb6aa0f4ad80.tar.gz
postgresql-0806cd29be01c837bc2f6b07bf14fb6aa0f4ad80.zip
Fix race condition in t/028_pitr_timelines.pl.
Per buildfarm members sungazer and mylodon. Back-patch to v15, which introduced this test. Discussion: https://postgr.es/m/20220627070457.GA2176699@rfd.leadboat.com
Diffstat (limited to 'src')
-rw-r--r--src/test/recovery/t/028_pitr_timelines.pl7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/test/recovery/t/028_pitr_timelines.pl b/src/test/recovery/t/028_pitr_timelines.pl
index a8b12d9af6e..bad02edf90a 100644
--- a/src/test/recovery/t/028_pitr_timelines.pl
+++ b/src/test/recovery/t/028_pitr_timelines.pl
@@ -140,6 +140,13 @@ is($result, qq{1}, "check table contents after point-in-time recovery");
# back to this timeline.
$node_pitr->safe_psql('postgres', "INSERT INTO foo VALUES(3);");
+# Wait for the archiver to be running. The startup process might have yet to
+# exit, in which case the postmaster has not started the archiver. If we
+# stop() without an archiver, the archive will be incomplete.
+$node_pitr->poll_query_until('postgres',
+ "SELECT true FROM pg_stat_activity WHERE backend_type = 'archiver';")
+ or die "Timed out while waiting for archiver to start";
+
# Stop the node. This archives the last segment.
$node_pitr->stop();