Hi, Alexander, Thanks, this is ok to push. But I still want to understand (question below) On Nov 10, Alexander Barkov wrote:
On 11/7/23 10:39 PM, Sergei Golubchik wrote:
Hi, Alexander,
Looks great! Just a couple of questions below
On Nov 07, Alexander Barkov wrote:
revision-id: 28deba0a611 (mariadb-11.0.1-239-g28deba0a611) parent(s): e9573c05965 author: Alexander Barkov committer: Alexander Barkov timestamp: 2023-09-22 14:38:52 +0400 message:
MDEV-32101 CREATE PACKAGE [BODY] for sql_mode=DEFAULT
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index af2ec678daa..fca39b63312 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -1285,7 +1285,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize); %left TRANSACTION_SYM TIMESTAMP PERIOD_SYM SYSTEM USER COMMENT_SYM
%left PREC_BELOW_SP_OBJECT_TYPE -%left FUNCTION_SYM +%left PACKAGE_MARIADB_SYM FUNCTION_SYM
Why PACKAGE_ORACLE_SYM and PACKAGE_ALLMODES_SYM don't need it? (same for BODY_ORACLE_SYM and BODY_ALLMODES_SYM)
Keywords PACKAGE and BODY have different "reserved-ness" for sql_mode=DEFAULT and sql_mode=ORACLE.
@@ -3049,6 +3059,8 @@ sp_handler: | PROCEDURE_SYM { $$= &sp_handler_procedure; } | PACKAGE_ORACLE_SYM { $$= &sp_handler_package_spec; } | PACKAGE_ORACLE_SYM BODY_ORACLE_SYM { $$= &sp_handler_package_body; } + | PACKAGE_MARIADB_SYM { $$= &sp_handler_package_spec; } + | PACKAGE_MARIADB_SYM BODY_MARIADB_SYM { $$= &sp_handler_package_body; }
Why not to use here PACKAGE_ALLMODES_SYM and BODY_ALLMODES_SYM? (also, I'd personally call them simply PACKAGE_SYM and BODY_SYM)
I checked - this will cause one more shift/reduce :(
why, because of this different "reserved-ness" ? or because of precedence tuning? Regards, Sergei Chief Architect, MariaDB Server and security@mariadb.org