[ https://issues.apache.org/jira/browse/CALCITE-1926?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kevin Risden updated CALCITE-1926: ---------------------------------- Labels: Postgres pull-request-available (was: Postgres) > Function names are unparsed quoted while PostgreSQL can only handle unquoted > function names > ------------------------------------------------------------------------------------------- > > Key: CALCITE-1926 > URL: https://issues.apache.org/jira/browse/CALCITE-1926 > Project: Calcite > Issue Type: Bug > Components: jdbc-adapter > Affects Versions: 1.13.0 > Reporter: Muhammad Gelbana > Priority: Major > Labels: Postgres, pull-request-available > > While working on a Drill plugin, Calcite unparsed a *JdbcRel* node and > produced the following PostgreSQL query > {code:sql} > SELECT "TEMP( Test)( 535799381)( 0)" > FROM (SELECT "STRPOS"("str1", 'BI') = 1 AS "TEMP( Test)( 535799381)( 0)" > FROM "TestV1"."Calcs") AS "t" > GROUP BY "TEMP( Test)( 535799381)( 0)" > {code} > The query fails due to a parsing exception, the reason is that the *STRPOS* > function name is quoted using double quotes. I tried the query manually > without quoting the function name and it executed successfully. > I debugged through Calcite and found that the [this > method|https://github.com/apache/calcite/blob/master/core/src/main/java/org/apache/calcite/sql/SqlUtil.java#L262] > unparses the function name as a plain identifier which leads to the [quoting > of the function > name|https://github.com/apache/calcite/blob/master/core/src/main/java/org/apache/calcite/sql/SqlIdentifier.java?deDup474625=1#L287] > if the dialect supports it. > Drill uses Calcite v1.4 but as I compared it with the master branch, I found > them identical. > I haven't tried that with custom functions yet. -- This message was sent by Atlassian JIRA (v7.6.3#76005)