postgrespro.git / summary / log / commit / refs

commit    364298be22090769da14aa749fe730cf16ed3c2c
Author:   Michael Paquier <michael@paquier.xyz>
Date:     Thu Mar 14 03:41:45 2019 +0000

    Fix race condition in recently-added TAP test for recovery consistency
    
    A couple of queries are run on the primary to create and fill in a test
    table, which gets checked on the standby afterwards.  However the test
    was not waiting for the confirmation that the necessary records have
    been replayed on the standby, leading to spurious failures.
    
    Per buildfarm member loach.  Thanks to Thomas Munro for the report and
    Tom Lane for the failure analysis.
    
    Discussion: https://postgr.es/m/CA+hUKGLUpqG52xtriUz5RpmeKPoEfNxNc-CginG+Cx+X2-Ycew@mail.gmail.com


src/test/recovery/t/016_min_consistency.pl | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/test/recovery/t/016_min_consistency.pl b/src/test/recovery/t/016_min_consistency.pl index 8f1a89c2d3..454f77f619 100644 --- a/src/test/recovery/t/016_min_consistency.pl +++ b/src/test/recovery/t/016_min_consistency.pl @@ -97,6 +97,10 @@ INSERT INTO test1 SELECT generate_series(1, 10000);"); $primary->safe_psql('postgres', 'CHECKPOINT;'); $primary->safe_psql('postgres', 'UPDATE test1 SET a = a + 1;'); +# Wait for last record to have been replayed on the standby. +$primary->wait_for_catchup($standby, 'replay', + $primary->lsn('insert')); + # Fill in the standby's shared buffers with the data filled in # previously. $standby->safe_psql('postgres', 'SELECT count(*) FROM test1;'); [parent: c015f853bf59]