On 2026-Jul-09, Heikki Linnakangas wrote: > Why is the autovacuum launcher not an aux process? I guess it's because it > needs to acquire a heavy-weight lock in order to read the list of databases.
Because it scans pg_database. commit 00e6a16d01683762c2f34eb4909fc739093ab3bf Author: Tom Lane <[email protected]> [] AuthorDate: Mon Aug 31 19:41:00 2009 +0000 CommitDate: Mon Aug 31 19:41:00 2009 +0000 Change the autovacuum launcher to read pg_database directly, rather than via the "flat files" facility. This requires making it enough like a backend to be able to run transactions; it's no longer an "auxiliary process" but more like the autovacuum worker processes. Also, its signal handling has to be brought into line with backends/workers. In particular, since it now has to handle procsignal.c processing, the special autovac-launcher-only signal conditions are moved to SIGUSR2. Alvaro, with some cleanup from Tom -- Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/ "If you want to have good ideas, you must have many ideas. Most of them will be wrong, and what you have to learn is which ones to throw away." (Linus Pauling)
