[
https://issues.apache.org/jira/browse/CALCITE-2282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16826033#comment-16826033
]
Danny Chan commented on CALCITE-2282:
-------------------------------------
[~julianhyde]
I did more tests and i make sure we can remove the operator table in sql
parser, but there are still some problems need to fix:
# The SqlPrettyWriter has a flag [1][2] to control if we will force to add
quotes to all identifiers when unparsing, with a default value *true*, if i
make it false, there wound be about 300 test errors, most of them are caused by
the quotes.
# Few test fail cause some reserved word is not recognized as builtin function
now without quoting, but i think this is expected behavior.[3]
# The builtin operators would be quoted for un-validated SqlNode tree if a
make SqlPrettyWriter#isQuoteAllIdentifiers return *true,* this behavior is
different with before
So should we make SqlPrettyWriter#isQuoteAllIdentifiers default true or false ?
Now we have the ability to unparse the SqlNode to sql just as original sql
statement, Only for some Adaptors the quoted info is lost, and we may add a
flag in SqlNode#toString to control the quotes behavior.
If we still make it true,
[1]
[https://github.com/apache/calcite/blob/986a2d579c8f9b9f08aa9bbbfe11efc4e7bb0809/core/src/main/java/org/apache/calcite/sql/pretty/SqlPrettyWriter.java#L234]
[2]
[https://github.com/apache/calcite/blob/986a2d579c8f9b9f08aa9bbbfe11efc4e7bb0809/core/src/main/java/org/apache/calcite/sql/pretty/SqlFormatOptions.java#L28]
[3]
https://github.com/apache/calcite/blob/986a2d579c8f9b9f08aa9bbbfe11efc4e7bb0809/core/src/test/java/org/apache/calcite/test/SqlValidatorTest.java#L1240
> Allow OperatorTable to be pluggable in the parser
> -------------------------------------------------
>
> Key: CALCITE-2282
> URL: https://issues.apache.org/jira/browse/CALCITE-2282
> Project: Calcite
> Issue Type: Bug
> Components: core
> Reporter: Sudheesh Katkam
> Priority: Major
> Attachments: CALCITE-2282.patch.txt
>
>
> SqlAbstractParserImpl [hardcodes OperatorTable to
> SqlStdOperatorTable|https://github.com/apache/calcite/blob/8327e674e7f0a768d124fa37fd75cda4b8a35bb6/core/src/main/java/org/apache/calcite/sql/parser/SqlAbstractParserImpl.java#L334|https://github.com/apache/calcite/blob/8327e674e7f0a768d124fa37fd75cda4b8a35bb6/core/src/main/java/org/apache/calcite/sql/parser/SqlAbstractParserImpl.java#L334].
> Make this pluggable via a protected method.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)