Re: A failure in prepared_xacts test
Alexander Law <exclusion@gmail.com>
From: Alexander Lakhin <exclusion@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>, Michael Paquier <michael@paquier.xyz>
Cc: Richard Guo <guofenglinux@gmail.com>,
PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2024-04-29T05:30:00Z
Lists: pgsql-hackers
Hello Tom and Michael, 29.04.2024 08:11, Tom Lane wrote: > 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. Yes, I'm afraid of the same. For example, the test failure [1] is of that ilk, I guess. [1] https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=rorqual&dt=2024-04-17%2016%3A33%3A23 Best regards, Alexander
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