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 2022/06/02 00:22:00 UTC

[jira] [Updated] (CALCITE-5147) Parser configured with BigQuery dialect cannot parse timestamp literal

     [ https://issues.apache.org/jira/browse/CALCITE-5147?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Hyde updated CALCITE-5147:
---------------------------------
    Fix Version/s: 1.31.0

> Parser configured with BigQuery dialect cannot parse timestamp literal
> ----------------------------------------------------------------------
>
>                 Key: CALCITE-5147
>                 URL: https://issues.apache.org/jira/browse/CALCITE-5147
>             Project: Calcite
>          Issue Type: Bug
>            Reporter: Steven Talbot
>            Priority: Major
>             Fix For: 1.31.0
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> It looks like [CALCITE-4247|https://github.com/apache/calcite/commit/c1052b343724c4a95bcf25419b70bc6032e0846b#diff-e873041549333502af52ece8a1b34301ae5a059ff4719e9bddbaef48929e7047R7796] creates a special string literal token for BigQuery. But that means that (AFAICT) [Parser.jj|https://github.com/apache/calcite/blob/b9c2099ea92a575084b55a206efc5dd341c0df62/core/src/main/codegen/templates/Parser.jj#L4529] then does not find the expected token type after a TIMESTAMP to make a timestamp literal, so something as simple as
> {code:java}
> SqlParser.create("SELECT TIMESTAMP '2018-02-17 13:22:04'", BigQuerySqlDialect.DEFAULT.configureParser(SqlParser.config())).parseQuery() {code}
> fails.
> Probably most other places in Parser.jj that use the "<QUOTED_STRING>" token suffer from the same issue.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)