| From: | Antonin Houska <ah(at)cybertec(dot)at> |
|---|---|
| To: | erik(at)timescale(dot)com |
| Cc: | PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
| Subject: | Re: A concurrent VACUUM FULL? |
| Date: | 2025-06-30 10:03:42 |
| Message-ID: | 18940.1751277822@localhost |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Erik Nordström <erik(at)timescale(dot)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
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Peter Eisentraut | 2025-06-30 10:12:12 | Re: [PATCH] Remove unused #include's in src/backend/utils/adt/* |
| Previous Message | Ashutosh Bapat | 2025-06-30 09:53:59 | Report bytes and transactions actually sent downtream |