Re: POC: Parallel processing of indexes in autovacuum
Daniil Davydov <3danissimo@gmail.com>
From: Daniil Davydov <3danissimo@gmail.com>
To: Masahiko Sawada <sawada.mshk@gmail.com>
Cc: Alexander Korotkov <aekorotkov@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-03T13:45:39Z
Lists: pgsql-hackers
Attachments
- 0001-Reset-pointer-into-the-going-away-DSM.patch (text/x-patch) patch 0001
Hi, On Fri, Apr 3, 2026 at 6:00 AM Masahiko Sawada <sawada.mshk@gmail.com> wrote: > > On Thu, Apr 2, 2026 at 8:10 AM Daniil Davydov <3danissimo@gmail.com> wrote: > > > > I think we should add some cleanup for autovacuum near the ParallelContext > > cleanup, since they are interconnected. I also want to return our tests that > > are triggering ERROR/PANIC in the leader worker in order to check whether all > > resources are released. I hope I will be able to get to that by tomorrow > > evening. > > I think that the beginning of vacuum loop (in PG_TRY() block in > vacuum()) seems better place as we're resetting vacuum delay > parameters: > > in_vacuum = true; > VacuumFailsafeActive = false; > VacuumUpdateCosts(); > VacuumCostBalance = 0; > VacuumCostBalanceLocal = 0; > VacuumSharedCostBalance = NULL; > VacuumActiveNWorkers = NULL; > I am still thinking that this pointer is related to the ParallelContext, and it is a bit confusing that we can manipulate it outside all "parallel" logic. Since this variable points to the DSM it looks very natural for me if its lifetime will be similar to the DSM. Please, see attached patch, that resets this pointer during dsm detaching. -- Best regards, Daniil Davydov
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