| From: | Nathan Bossart <nathandbossart(at)gmail(dot)com> |
|---|---|
| To: | pgsql-hackers(at)postgresql(dot)org |
| Subject: | Re: REPACK ONLY is accepted but ignored |
| Date: | 2026-08-28 21:23:10 |
| Message-ID: | apH8Pm8ZJ2Rchzwc@nathan |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On Thu, Aug 27, 2026 at 10:11:45AM -0500, Nathan Bossart wrote:
> The REPACK grammar accepts ONLY and a trailing * like VACUUM does, but it's
> neither documented nor handled in the REPACK code. From a v19 perspective,
> it might be best to just reject that syntax for now, but that does mean it
> won't be able to do everything VACUUM (FULL) can.
Bringing REPACK in line with its documentation looks pretty simple. This
is probably the way to go for v19, as proper support for ONLY and trailing
* seems to require more invasive changes.
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y
index a33c3aaeeb2..2df39a48fc6 100644
--- a/src/backend/parser/gram.y
+++ b/src/backend/parser/gram.y
@@ -12543,25 +12543,25 @@ CreateConversionStmt:
*****************************************************************************/
RepackStmt:
- REPACK opt_utility_option_list vacuum_relation USING INDEX name
+ REPACK opt_utility_option_list qualified_name opt_name_list USING INDEX name
{
RepackStmt *n = makeNode(RepackStmt);
n->command = REPACK_COMMAND_REPACK;
- n->relation = (VacuumRelation *) $3;
- n->indexname = $6;
+ n->relation = makeVacuumRelation($3, InvalidOid, $4);
+ n->indexname = $7;
n->usingindex = true;
n->params = $2;
$$ = (Node *) n;
}
- | REPACK opt_utility_option_list vacuum_relation opt_usingindex
+ | REPACK opt_utility_option_list qualified_name opt_name_list opt_usingindex
{
RepackStmt *n = makeNode(RepackStmt);
n->command = REPACK_COMMAND_REPACK;
- n->relation = (VacuumRelation *) $3;
+ n->relation = makeVacuumRelation($3, InvalidOid, $4);
n->indexname = NULL;
- n->usingindex = $4;
+ n->usingindex = $5;
n->params = $2;
$$ = (Node *) n;
}
--
nathan
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Peter Eisentraut | 2026-08-28 21:33:12 | new clang warnings about unused global variables |
| Previous Message | Andres Freund | 2026-08-28 21:05:18 | Re: Error handling in after-startup shmem requests |