Re: POC: Parallel processing of indexes in autovacuum
Alexander Korotkov <aekorotkov@gmail.com>
From: Alexander Korotkov <aekorotkov@gmail.com>
To: Daniil Davydov <3danissimo@gmail.com>
Cc: Masahiko Sawada <sawada.mshk@gmail.com>, SATYANARAYANA NARLAPURAM <satyanarlapuram@gmail.com>, Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>,
Sami Imseih <samimseih@gmail.com>, Matheus Alcantara <matheusssilv97@gmail.com>,
Maxim Orlov <orlovmg@gmail.com>, Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2026-04-01T12:10:39Z
Lists: pgsql-hackers
Hi, Daniil! On Wed, Apr 1, 2026 at 10:44 AM Daniil Davydov <3danissimo@gmail.com> wrote: > Thank you very much for your comments! > Please, see an updated patch. Thank you for your work on this subject! I've some notes about the patch. 1) The changes in guc.c allows autovacuum parallel leader to accept changes in not just cost-based GUCs, but any GUCs. That should be no problem, because parallel workers have their own copies of GUC variables, but I think this worth comment. 2) Maximum value for autovacuum_parallel_workers reloption is defined as literally 1024, while max value for autovacuum_max_parallel_workers is defined as MAX_PARALLEL_WORKER_LIMIT (also 1024). Should we define max value for reloption as MAX_PARALLEL_WORKER_LIMIT as well? 3) Some paragraphs were moved from vacuum.sgml to maintenance.sgml. It particular it references <replaceable class="parameter">integer</replaceable, which is related to PARALLEL option syntax: (PARALLEL integer). Now it becoming unclear and needs to be revised. 4) I also think maintenance.sgml should mention the new reloption. 5) I think it worth having a test which check that setting autovacuum_parallel_workers to 0 disables the parallel autovacuum for given table. 6) Minor grammar issue in PVSharedCostParams comment, it must be "vacuum workers compare" (plural subject). ------ Regards, Alexander Korotkov Supabase
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Allow autovacuum to use parallel vacuum workers.
- 1ff3180ca016 19 (unreleased) landed
-
Add parallel vacuum worker usage to VACUUM (VERBOSE) and autovacuum logs.
- adcdbe93860b 19 (unreleased) landed
-
doc: Put new options in consistent order on man pages
- bc35adee8d7a 18.0 cited