Re: allow changing autovacuum_max_workers without restarting
Nathan Bossart <nathandbossart@gmail.com>
From: Nathan Bossart <nathandbossart@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Peter Eisentraut <peter@eisentraut.org>, Andres Freund <andres@anarazel.de>, pgsql-hackers@lists.postgresql.org, "Imseih (AWS), Sami" <simseih@amazon.com>, Justin Pryzby <pryzby@telsasoft.com>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2025-04-29T17:42:19Z
Lists: pgsql-hackers
On Tue, Apr 29, 2025 at 01:31:55PM -0400, Tom Lane wrote:
> I wrote:
>> Andres seemed lukewarm about reverting 38da05346 or 6d0154196, so
>> I left it be for the moment. But I still feel the argument is good
>> that "these will do little except confuse future hackers". Barring
>> objection, I'll go revert them.
>
> Actually ... on looking again at 6d0154196 ("Lower default value of
> autovacuum_worker_slots in initdb as needed"), it doesn't look that
> silly. If we're unable to allocate max_connections = 100, turning
> it down while still insisting on 16 AV worker slots doesn't seem
> terribly sane. Maybe we'd choose a formula other than
> "(max_connections / 6)" if we were doing it afresh, but not scaling
> autovacuum_worker_slots at all doesn't seem like the best answer.
Fair point.
> So now I'm inclined to leave that one alone. I'd still revert
> 38da05346, which means the comment added by 6d0154196 needs some minor
> adjustments. But I think we can stick with the "(max_connections /
> 6)" formula --- it will produce 3 with trial_conns = 20, but that's
> enough.
Yup, as long as the lowest possible default is >= the default for
autovacuum_max_workers (3), we're good.
--
nathan
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Give up on running with NetBSD/OpenBSD's default semaphore settings.
- 810a8b1c8051 18.0 landed
-
initdb: Do not report default autovacuum_worker_slots.
- 2b49492eda3f 18.0 landed
-
Lower default value of autovacuum_worker_slots in initdb as needed.
- 6d01541960e2 18.0 landed
-
Allow changing autovacuum_max_workers without restarting.
- c758119e5bfb 18.0 landed
-
Reserve a PGPROC slot and semaphore for the slotsync worker process.
- 2bdf1b2a2efc 18.0 cited
-
Make archiver process an auxiliary process.
- d75288fb27b8 14.0 cited
-
Correct the formulas for System V IPC parameters SEMMNI and SEMMNS in docs.
- 597f7e3a6ec3 9.6.0 cited