Fix two-phase commit test for recovery mode
The original code had a race condition because it never ensured the standby was caught up before proceeding; add a wait similar to every other place that does this. Author: Michaël Paquier Discussion: https://postgr.es/m/CAB7nPqTm9p+LCm1mVJYvgpwagRK+uibT-pKq0O2-paOWxT62jw@mail.gmail.com
This commit is contained in:
parent
a6979c3a68
commit
89c59b742a
@ -331,6 +331,14 @@ $cur_master->psql(
|
||||
CHECKPOINT;
|
||||
COMMIT PREPARED 'xact_009_13';");
|
||||
|
||||
# Ensure that last transaction is replayed on standby.
|
||||
my $cur_master_lsn =
|
||||
$cur_master->safe_psql('postgres', "SELECT pg_current_wal_lsn()");
|
||||
my $caughtup_query =
|
||||
"SELECT '$cur_master_lsn'::pg_lsn <= pg_last_wal_replay_lsn()";
|
||||
$cur_standby->poll_query_until('postgres', $caughtup_query)
|
||||
or die "Timed out while waiting for standby to catch up";
|
||||
|
||||
$cur_standby->psql(
|
||||
'postgres',
|
||||
"SELECT count(*) FROM t_009_tbl2",
|
||||
|
Loading…
x
Reference in New Issue
Block a user