Re: [Maria-developers] a1440737662: MDEV-20021 sql_mode="oracle" does not support MINUS set operator
Hi, Monty! On Apr 13, Michael Widenius wrote:
revision-id: a1440737662 (mariadb-10.5.2-553-ga1440737662) parent(s): 04a13e6ab8f author: Michael Widenius <michael.widenius@gmail.com> committer: Michael Widenius <michael.widenius@gmail.com> timestamp: 2021-03-24 19:51:22 +0200 message:
MDEV-20021 sql_mode="oracle" does not support MINUS set operator
MINUS is mapped to EXCEPT
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index 57ba9df42c0..edd2f353dd0 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -16037,6 +16038,7 @@ reserved_keyword_udt_not_param_type: | MINUTE_MICROSECOND_SYM | MINUTE_SECOND_SYM | MIN_SYM + | MINUS_ORACLE_SYM | MODIFIES_SYM | MOD_SYM | NATURAL
this is not good. MINUS should be in reserved_keyword_udt_not_param_type only in oracle mode, and otherwise it should be in keyword_sp_var_and_label (or not a keyword at all, but I don't think it's possible). Regards, Sergei VP of MariaDB Server Engineering and security@mariadb.org
Hi! <cut>
MINUS is mapped to EXCEPT
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index 57ba9df42c0..edd2f353dd0 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -16037,6 +16038,7 @@ reserved_keyword_udt_not_param_type: | MINUTE_MICROSECOND_SYM | MINUTE_SECOND_SYM | MIN_SYM + | MINUS_ORACLE_SYM | MODIFIES_SYM | MOD_SYM | NATURAL
this is not good. MINUS should be in reserved_keyword_udt_not_param_type only in oracle mode, and otherwise it should be in keyword_sp_var_and_label (or not a keyword at all, but I don't think it's possible).
Good catch. Fixed according to suggestions (must be a keyword as you thought). I also extended the oracle/minus.test to cover this. Regards, Monty
participants (2)
-
Michael Widenius
-
Sergei Golubchik