On Tue, May 5, 2026 at 8:02 AM Tatsuo Ishii <ishii@postgresql.org> wrote:
>
> > Attached is the v47 patches for Row pattern recognition (SQL/RPR).
>
Hi
The patchset is too big, I only downloaded v47-0001...
Just a quick skim of the code on my end.
I noticed two code style issues, currently we don't have a code style
reference in the manual.
1. We need to add trailing commas to enum definitions. See
https://git.postgresql.org/cgit/postgresql.git/commit/?id=611806cd726fc92989ac918eac48fd8d684869c7
2.
+ | '{' ',' Iconst '}' Op
+ {
+ if (strcmp($5, "?") != 0)
+ ereport(ERROR,
+ (errcode(ERRCODE_SYNTAX_ERROR),
+ errmsg("invalid token after range quantifier"),
+ errhint("Only \"?\" is allowed after {n,} or {,m} to make it reluctant."),
+ parser_errposition(@5)));
+ if ($3 <= 0 || $3 >= INT_MAX)
+ ereport(ERROR,
+ errcode(ERRCODE_SYNTAX_ERROR),
+ errmsg("quantifier bound must be between 1 and %d", INT_MAX - 1),
+ parser_errposition(@3));
+ $$ = (Node *) makeRPRQuantifier(0, $3, @5, @1, yyscanner);
+ (errcode(ERRCODE_SYNTAX_ERROR),
The leading parenthesis is optional and can be removed, fewer
parentheses are always better.
See related discussion:
https://postgr.es/m/202510100916.s2e6n3xiwvyc@alvherre.pgsql
Since v47-0001 introduces many ereport(ERROR) messages, it makes sense
to move the related regression tests from the other patch into
v47-0001, IMHO.
--
jian
https://www.enterprisedb.com/