Re: Adding REPACK [concurrently]
Antonin Houska <ah@cybertec.at>
From: Antonin Houska <ah@cybertec.at>
To: alvherre@kurilemu.de
Cc: Mihail Nikalayeu <mihailnikalayeu@gmail.com>,
Robert Treat <rob@xzilla.net>,
Pg Hackers <pgsql-hackers@lists.postgresql.org>,
Fujii Masao <masao.fujii@gmail.com>
Date: 2025-10-09T06:38:15Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Improve REPACK (CONCURRENTLY) error messages some more
- 378dffaf8c80 19 (unreleased) landed
-
Add CONCURRENTLY option to REPACK
- 28d534e2ae0a 19 (unreleased) landed
-
Make index_concurrently_create_copy more general
- 33bf7318f94c 19 (unreleased) landed
-
Document the 'command' column of pg_stat_progress_repack
- a630ac5c2016 19 (unreleased) landed
-
Introduce the REPACK command
- ac58465e0618 19 (unreleased) landed
-
Split vacuumdb to create vacuuming.c/h
- c4067383cb2c 19 (unreleased) landed
-
Revert changes to CONCURRENTLY that "sped up" Xmin advance
- 042b584c7f7d 14.4 cited
Álvaro Herrera <alvherre@kurilemu.de> wrote:
> On 2025-Sep-26, Mihail Nikalayeu wrote:
>
> > Should we rename it to repack_context to be aligned with the calling side?
>
> Sure, done.
>
> > > cmd == REPACK_COMMAND_CLUSTER ? "CLUSTER" : "REPACK",
> >
> > May be changed to RepackCommandAsString
>
> Oh, of course.
>
> > Documentation of pg_repackdb contains a lot of "analyze" and even
> > "--analyze" parameter - but I can't see anything related in the code.
>
> Hmm, yeah, that was missing. I added it. In doing so I noticed that
> because vacuumdb allows a column list to be given, then we should do
> likewise here, both in pg_repackdb and in the REPACK command, so I added
> support for that.
+ /*
+ * Make sure ANALYZE is specified if a column list is present.
+ */
+ if ((params->options & CLUOPT_ANALYZE) == 0 && stmt->relation->va_cols != NIL)
+ ereport(ERROR,
+ (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
+ errmsg("ANALYZE option must be specified when a column list is provided")));
Shouldn't the user documentation mention this restriction?
--
Antonin Houska
Web: https://www.cybertec-postgresql.com