Re: Adding facility for injection points (or probe points?) for more advanced tests
Amul Sul <sulamul@gmail.com>
From: Amul Sul <sulamul@gmail.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2023-10-25T04:36:17Z
Lists: pgsql-hackers
On Wed, Oct 25, 2023 at 9:43 AM Michael Paquier <michael@paquier.xyz> wrote: > Hi all, > > I don't remember how many times in the last few years when I've had to > hack the backend to produce a test case that involves a weird race > condition across multiple processes running in the backend, to be able > to prove a point or just test a fix (one recent case: 2b8e5273e949). > Usually, I come to hardcoding stuff for the following situations: > - Trigger a PANIC, to force recovery. > - A FATAL, to take down a session, or just an ERROR. > - palloc() failure injection. > - Sleep to slow down a code path. > - Pause and release with condition variable. +1 for the feature. TWIMW, here[1] is an interesting talk from pgconf.in 2020 on the similar topic. 1] https://pgconf.in/conferences/pgconfin2020/program/proposals/101 Regards, Amul Sul
Commits
-
ci: Enable injection points in builds
- 183b6f73b04e 17.0 landed
-
Fix two memcpy() bugs in the new injection point code
- 0eb23285a257 17.0 landed
-
Add test module injection_points
- 49cd2b93d7db 17.0 landed
-
Add backend support for injection points
- d86d20f0ba79 17.0 landed
-
Refactor code checking for file existence
- e72a37528dda 17.0 landed