Re: A concurrent VACUUM FULL?
Antonin Houska <ah@cybertec.at>
From: Antonin Houska <ah@cybertec.at>
To: erik@timescale.com
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-06-30T10:03:42Z
Lists: pgsql-hackers
Erik Nordström <erik@timescale.com> wrote: > Hi hackers, > > I've been looking at the code for CLUSTER/VACUUM FULL, and whether it is possible to do a concurrent version of it using a > multi-transactional approach similar to concurrent reindexing and partition detach. > > The idea would be to hold weaker locks in TX1 when doing the heap rewrite (essentially allow reads but prevent writes), and then do the > actual heap swap in a second TX2 transaction. Patch [1] is in the queue that allows both reads and writes. (An exclusive lock is acquired here for the swaps, but that should be held for very short time.) -- Antonin Houska Web: https://www.cybertec-postgresql.com [1] https://commitfest.postgresql.org/patch/5117/