On Tue, Apr 02, 2024 at 04:35:28PM +0500, Andrey M. Borodin wrote: > We can add tests just like [0] with injection points. > I mean replace that "sleep 1" with something like > "$node->wait_for_event('autovacuum worker', 'autocauum-runing');". > Currently we have no infrastructure to wait for autovacuum of > particular table, but I think it's doable. > Also I do not like that test is changing system-wide autovac > settings, AFAIR these settings can be set for particular table.
Yeah, hardcoded sleeps are not really acceptable. On fast machines they eat in global runtime making the whole slower, impacting the CI. On slow machines, that's not going to be stable and we have a lot of buildfarm animals starved on CPU, like the ones running valgrind or just because their environment is slow (one of my animals runs on a RPI, for example). Note that slow machines have a lot of value because they're usually better at catching race conditions. Injection points would indeed make the tests more deterministic by controlling the waits and wakeups you'd like to have in the patch's tests. eeefd4280f6e would be a good example of how to implement a test. -- Michael
signature.asc
Description: PGP signature