Wake up autovacuum launcher from postmaster when a worker exits - Mailing list pgsql-hackers

From Heikki Linnakangas
Subject Wake up autovacuum launcher from postmaster when a worker exits
Date
Msg-id a5e27d25-c7e7-45d5-9bac-a17c8f462def@iki.fi
Whole thread Raw
Responses Re: Wake up autovacuum launcher from postmaster when a worker exits
Re: Wake up autovacuum launcher from postmaster when a worker exits
List pgsql-hackers
When an autovacuum worker exits, ProcKill() sends SIGUSR2 to the 
launcher. I propose moving that responsibility to the postmaster, because:

* It's simpler IMHO

* The postmaster is already responsible for sending the signal if fork() 
fails

* It makes it consistent with background workers. When a background 
worker exits, the postmaster sends the signal to the launching process 
(if requested).

* Postmaster doesn't need to worry about sending the signal to the wrong 
process if the launcher's PID is reused, because it always has 
up-to-date PID information, because the launcher is postmaster's child 
process. That risk was negligible to begin with, but this eliminates 
completely, so we don't need the comment excusing it it anymore.

I'm a little surprised it wasn't done this way to begin with, so I 
wonder if I'm missing something?

- Heikki

Attachment

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: improve performance of pg_dump with many sequences
Next
From: Andres Freund
Date:
Subject: Re: Docs: make source file path references consistent