← Back to team overview

maria-developers team mailing list archive

Re: a1440737662: MDEV-20021 sql_mode="oracle" does not support MINUS set operator

 

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


References