Re: Autovacuum worker doesn't immediately exit on postmaster death

Stephen Frost <sfrost@snowman.net>

From: Stephen Frost <sfrost@snowman.net>
To: Andres Freund <andres@anarazel.de>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Victor Yegorov <vyegorov@gmail.com>, Alexander Kukushkin <cyberdemn@gmail.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2020-10-29T18:05:55Z
Lists: pgsql-hackers
Greetings,

* Andres Freund (andres@anarazel.de) wrote:
> On 2020-10-29 12:27:53 -0400, Tom Lane wrote:
> > Maybe put a check into vacuum_delay_point, and poll the pipe when we're
> > about to sleep anyway?
> 
> Perhaps we should just replace the pg_usleep() with a latch wait?

I'm not sure why, but I had the thought that we already had done that,
and was a bit surprised that it wasn't that way, so +1 from my part.

I do think it'd be good to find a way to check every once in a while
even when we aren't going to delay though.  Not sure what the best
answer there is.

Thanks,

Stephen

Commits

  1. Use a WaitLatch for vacuum/autovacuum sleeping