Hi,

What about providing an alternate parser in the server but only for plugins to use?  The plugins rewrite the whole query, not modify the syntax tree so there is no fiddling with the query on THD, it is rewritten before the bison parser gets it.

--Justin

On Tue, Mar 3, 2015 at 8:07 AM, Sergei Golubchik <serg@mariadb.org> wrote:
Hi, Justin!

On Mar 03, Justin Swanhart wrote:
> So uhmm, use a new parser.  Like the one antony wrote in LLVM? :)  I
> mean, we would like to have window functions, CTE, and all those other
> fun things. SQL-92 is a not relevant anymore.

In MySQL times we've tried to replace a parser. Twice.
Antony has spent a year on that - that was one of the attempts.

We're still using the old one, so neither project was a success.

And Oracle started "parser refactoring" in 5.7, but they're doing it
piece-wise now, not trying to replace everything at once. And they'll
have to stay with bison this way.

What I mean - we very much want to use a new parser. We really do.
But it's just such a huge project :(

Regards,
Sergei