You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Julian Hyde (JIRA)" <ji...@apache.org> on 2018/11/02 02:18:00 UTC
[jira] [Resolved] (CALCITE-2405) In Babel parser: allow to use some
reserved keyword as identifier
[ https://issues.apache.org/jira/browse/CALCITE-2405?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Julian Hyde resolved CALCITE-2405.
----------------------------------
Resolution: Fixed
Fix Version/s: 1.18.0
Fixed in [561c6427|http://git-wip-us.apache.org/repos/asf/calcite/commit/561c6427].
In Babel parser, I made 400 reserved keywords including YEAR, SECOND, DESC non-reserved. The following remain reserved:
* Command words (e.g. SELECT, UPDATE, EXPLAIN, ALTER);
* SQL clause names (e.g. WHERE, ORDER, INNER but not BY);
* Keywords that start literals (DATE, TIME, TIMESTAMP, INTERVAL).
In Planner, use the parser's conformance.
Avoid javac {{StackOverflowError}} by splitting up the {{NonReservedKeywords()}} parser method into several parts.
Compatibility warning: If you have created your own sub-parser you must copy [[nonReservedKeywords|https://github.com/apache/calcite/blob/master/core/src/main/codegen/config.fmpp#L52]] from core {{config.fmpp}} to your {{config.fmpp}}. Previously the core non-reserved keywords were in a parser method {{CommonNonReservedKeywords()}}, but that method has been removed.
Upgrade freemarker to 2.3.28.
> In Babel parser: allow to use some reserved keyword as identifier
> -----------------------------------------------------------------
>
> Key: CALCITE-2405
> URL: https://issues.apache.org/jira/browse/CALCITE-2405
> Project: Calcite
> Issue Type: New Feature
> Components: babel
> Affects Versions: 1.17.0
> Reporter: Enrico Olivelli
> Assignee: Julian Hyde
> Priority: Major
> Fix For: 1.18.0
>
>
> I have some case of incompatibility between MySQL (actually on HerdDB which is a replacement for MySQL) and Calcite around reserved identifiers.
> * Allow a schema with name 'default'
> * Allow a column name with name 'value'
>
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)