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