PostgreSQL 19 introduces a new built-in REPACK command that consolidates the functionality of VACUUM FULL and CLUSTER into a single, cleaner command. It rewrites a table to reclaim disk space from bloat, supports ordering by a specified index, and includes a new progress view (pg_stat_progress_repack). Currently it acquires the same locks as VACUUM FULL, but the design explicitly paves the way for a future CONCURRENTLY mode. Practical examples show an 8.5GB bloated table reduced to ~1.6GB after deleting 80% of rows and running REPACK. Supported options include VERBOSE and ANALYZE, with the ability to analyze specific columns.
Sort: