postgres.git / summary / log / commit / refs
commit a22652ebbcb33a6a271cc69841ad61d971d7db30
Author: Thomas Munro <tmunro@postgresql.org>
Date: Sun May 08 04:54:09 2022 +0000
Fix race in 032_relfilenode_reuse.pl.
Add wait_for_catchup() call to the test added by commit e2f65f42. Per
slow build farm animal grison.
Also fix a comment.
Discussion: https://postgr.es/m/CA%2BhUKGLJ2Vy8hVQmnYotmTaEKZK0%3D-GcXgNAgcHzArZvtS4L_g%40mail.gmail.com
src/test/recovery/t/032_relfilenode_reuse.pl | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/test/recovery/t/032_relfilenode_reuse.pl b/src/test/recovery/t/032_relfilenode_reuse.pl
index 22d8e85614c..ac9340b7dd1 100644
--- a/src/test/recovery/t/032_relfilenode_reuse.pl
+++ b/src/test/recovery/t/032_relfilenode_reuse.pl
@@ -72,6 +72,8 @@ $node_primary->safe_psql('postgres', q[
CREATE TABLE replace_sb(data text);
INSERT INTO replace_sb(data) SELECT random()::text FROM generate_series(1, 15000);]);
+$node_primary->wait_for_catchup($node_standby);
+
# Use longrunning transactions, so that AtEOXact_SMgr doesn't close files
send_query_and_wait(
\%psql_primary,
@@ -101,9 +103,9 @@ verify($node_primary, $node_standby, 1,
# value so we can check everything is OK
$node_primary->safe_psql('conflict_db', "UPDATE large SET datab = 2;");
-# Again cause a lot of IO. That'll again write back dirty data, but uses (XXX
-# adjust after bugfix) the already opened file descriptor.
-# FIXME
+# Again cause a lot of IO. That'll again write back dirty data, but uses newly
+# opened file descriptors, so we don't confuse old files with new files despite
+# recycling relfilenodes.
cause_eviction(\%psql_primary, \%psql_standby);
verify($node_primary, $node_standby, 2,
[parent: ad76c9708bd1]