Fix race condition in remove_temp_files_after_crash TAP test
authorTomas Vondra <tomas.vondra@postgresql.org>
Fri, 19 Mar 2021 17:12:39 +0000 (18:12 +0100)
committerTomas Vondra <tomas.vondra@postgresql.org>
Fri, 19 Mar 2021 17:12:39 +0000 (18:12 +0100)
commite589c4890b05044a04207c2797e7c8af6693ea5f
treebcc8d49a6b03c363c191a9ea3ad09145751959bd
parent27ab1981e7c9b8fcbcb143c5f6f706441a52bbc8
Fix race condition in remove_temp_files_after_crash TAP test

The TAP test was written so that it was not waiting for the correct SQL
command, but for output from the preceding one.  This resulted in race
conditions, allowing the commands to run in a different order, not block
as expected and so on.  This fixes it by inverting the order of commands
where possible, so that observing the output guarantees the data was
inserted properly, and waiting for a lock to appear in pg_locks.

Discussion: https://postgr.es/m/CAH503wDKdYzyq7U-QJqGn%3DGm6XmoK%2B6_6xTJ-Yn5WSvoHLY1Ww%40mail.gmail.com
src/test/recovery/t/022_crash_temp_files.pl