From 7fb29fdd109563a0c981182d91b034c43f55098a Mon Sep 17 00:00:00 2001 From: Radim Marek Date: Sat, 26 Sep 2026 09:02:28 +0200 Subject: [PATCH] doc: Mention memory use and change limit of REPACK (CONCURRENTLY) REPACK (CONCURRENTLY) needs a bit of backend memory for every row that other transactions update or delete while it runs, and it fails once there are more than about 100 million of them. Neither is mentioned in the docs, so add a short note. Discussion: https://postgr.es/m/CAJgoLk+dodrwuwCuXERGYwgjQzSwrKd+xgitYrL32oWDt39zvA@mail.gmail.com --- doc/src/sgml/ref/repack.sgml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/doc/src/sgml/ref/repack.sgml b/doc/src/sgml/ref/repack.sgml index 346cba89c90..b65f9620006 100644 --- a/doc/src/sgml/ref/repack.sgml +++ b/doc/src/sgml/ref/repack.sgml @@ -259,6 +259,13 @@ REPACK [ ( option [, ...] ) ] USING are also stored separately in a temporary file, until they can be processed. + + Each row that other transactions update or delete during + REPACK (CONCURRENTLY) also takes a small amount of + backend memory, not limited by . + The command cannot complete if more than about 100 million rows are + changed this way. + -- 2.55.0