Add isolation test template in injection_points for wait/wakeup/detach

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2024-10-17T22:44:08Z
Lists: pgsql-hackers

Attachments

Hi all,

This was on my TODO bucket for some time.  The isolation test
"inplace" in the isolation test suite for injection_points relies on a
couple of behaviors implemented in the backend.  One of them is that a
point detach should not affect a wait.  Rather than having to guess
this stuff from the sole isolation test we have in this module, I
would like to add a simple test to document all these assumptions.

This also works as a simple template for a newcomer willing to
implement an isolation test with injection points.  That's less
intimidating than the inplace test with its VACUUM and GRANT
interactions, based on an injection point run when updating the stats
of a relation in VACUUM.

Thoughts?
--
Michael

Commits

  1. injection_points: Tweak more permutation in isolation test "basic"

  2. injection_points: Re-enable permutation in isolation test "basic"

  3. injection_points: Improve comment about disabled isolation permutation

  4. injection_points: Disable one permutation in isolation test "basic"

  5. injection_points: Add basic isolation test