Postgres 19's REPACK rewrites a bloated table without locking out your writers
Scored daily by a customisable AI persona to surface the most relevant engineering leadership news.
Postgres 19 REPACK feature with detailed concurrency benchmarks, highly actionable and directly relevant to data engineering.
PostgreSQL 19 beta 3 introduces REPACK (CONCURRENTLY), which rewrites bloated tables to reclaim space and reorder by index without blocking reads or writes, unlike VACUUM FULL's ACCESS EXCLUSIVE lock. In benchmarks, REPACK (CONCURRENTLY) served 3,988 writes during a 4.32s rewrite versus VACUUM FULL's 33 writes in 0.97s, and allowed 384 reads versus 1 read during maintenance. The tradeoff is longer total duration for zero downtime, with a brief lock only during the final file swap, and progress is observable via pg_stat_progress_repack.