pgsql: Fix REPACK command reporting in pg_stat_progress_cluster

From: Fujii Masao <fujii(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix REPACK command reporting in pg_stat_progress_cluster
Date: 2026-09-10 02:55:51
Message-ID: E1x4Ux4-00000004DjD-0Hmg@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix REPACK command reporting in pg_stat_progress_cluster

pg_stat_progress_cluster translates REPACK into VACUUM FULL when
pg_stat_progress_repack.repack_index_relid is zero, and into CLUSTER
otherwise.

Previously, repack_index_relid was set only when an index scan was used.
When REPACK used a sequential scan and sort to order the table by an index,
the field remained zero even though index ordering had been requested. As a
result, pg_stat_progress_cluster incorrectly reported the command as
VACUUM FULL instead of CLUSTER.

Fix this by setting repack_index_relid to the OID of the requested ordering
index when progress reporting starts, regardless of the scan method. This
allows pg_stat_progress_cluster to correctly report REPACK as CLUSTER when
index ordering is requested.

Also update the documentation to clarify the meaning of the index columns
and how REPACK is translated into CLUSTER or VACUUM FULL.

Suggested-by: Fujii Masao <masao(dot)fujii(at)gmail(dot)com>
Author: Chao Li <lic(at)highgo(dot)com>
Reviewed-by: Fujii Masao <masao(dot)fujii(at)gmail(dot)com>
Reviewed-by: Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com>
Discussion: https://postgr.es/m/CAN4CZFMzy2V_wvRCBW5K8=wVCk1-C7nq=8otXO=u+s_1KZHqyA@mail.gmail.com
Backpatch-through: 19

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/4dd037286e06116f6f4af70a291e215c0a111c24

Modified Files
--------------
doc/src/sgml/monitoring.sgml | 13 +++++++------
src/backend/access/heap/heapam_handler.c | 12 ++----------
src/backend/commands/repack.c | 8 +++++++-
3 files changed, 16 insertions(+), 17 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Fujii Masao 2026-09-10 02:56:05 pgsql: Fix REPACK command reporting in pg_stat_progress_cluster
Previous Message Michael Paquier 2026-09-10 02:29:39 pgsql: test_bitmapset: Improve handling of incorrect inputs