Re: How did VACUUM ANALYZE reclaim large TOAST bloat at disk level in PostgreSQL 16?
Ron Johnson <ronljohnsonjr@gmail.com>
From: Ron Johnson <ronljohnsonjr@gmail.com>
To: pgsql-general <pgsql-general@postgresql.org>
Date: 2025-12-29T16:06:00Z
Lists: pgsql-general
On Mon, Dec 29, 2025 at 10:53 AM pramod gupta <mail2sony2010@gmail.com> wrote: > Hello Everyone, > > We have a table with a total size of ~628 GB, out of which ~601 GB was > TOAST data. > After running VACUUM ANALYZE on a weekly basis, the table size reduced > significantly to ~109 GB, indicating a large amount of bloat removal. > > I would like to understand: > > How was VACUUM ANALYZE able to reclaim such a large amount of space, > especially for TOAST data? > > Under what conditions does PostgreSQL reclaim disk space without requiring > VACUUM FULL or CLUSTER? > > Is this behavior expected in PostgreSQL 16, particularly for heavily > updated or deleted TOASTed columns? > > Any insights or documentation references would be greatly appreciated. > > PostgreSQL version: 16 > See the TRUNCATE option: https://www.postgresql.org/docs/12/sql-vacuum.html -- Death to <Redacted>, and butter sauce. Don't boil me, I'm still alive. <Redacted> lobster!