Re: A failure in prepared_xacts test
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Michael Paquier <michael@paquier.xyz>
Cc: Richard Guo <guofenglinux@gmail.com>,
PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2024-04-29T05:11:00Z
Lists: pgsql-hackers
Michael Paquier <michael@paquier.xyz> writes: > If you grep the source tree, you'd notice that a prepared transaction > named gxid only exists in the 2PC tests of ECPG, in > src/interfaces/ecpg/test/sql/twophase.pgc. So the origin of the > failure comes from a race condition due to test parallelization, > because the scan of pg_prepared_xacts affects all databases with > installcheck, and in your case it means that the scan of > pg_prepared_xacts was running in parallel of the ECPG tests with an > installcheck. Up to now, we've only worried about whether tests running in parallel within a single test suite can interact. It's quite scary to think that the meson setup has expanded the possibility of interactions to our entire source tree. Maybe that was a bad idea and we should fix the meson infrastructure to not do that. I fear that otherwise, we'll get bit regularly by very-low-probability bugs of this kind. regards, tom lane
Commits
-
Remove auth-options support from initdb
- 83ae824c87a5 17.0 landed
-
Make two-phase tests of ECPG and main suite more concurrent-proof
- 7e61e4cc7cfc 17.0 landed
-
initdb: Add options --auth-local and --auth-host
- 8a02339e9ba3 9.2.0 cited