Pavel Gubin created CALCITE-1987:
------------------------------------

             Summary: EXTRACT is not implemented for JDBC
                 Key: CALCITE-1987
                 URL: https://issues.apache.org/jira/browse/CALCITE-1987
             Project: Calcite
          Issue Type: Bug
          Components: core
    Affects Versions: 1.14.0
            Reporter: Pavel Gubin
            Assignee: Julian Hyde


The following test fails with exception being added to JdbcTest:
{code:java}
  @Test public void testExtractMonthFromTimestamp() {
    CalciteAssert.that()
        .with(CalciteAssert.Config.JDBC_FOODMART)
        .query("select extract(month from \"birth_date\") as c \n"
            + "from \"foodmart\".\"employee\" where \"employee_id\"=1")
        .returns("C=8\n");
  }
{code}

Note, that it is important to make select from real table and not using limit 
so that planner tries to push EXTRACT to JdbcProject. But then it throws the 
following exception ():
{noformat}
Caused by: java.sql.SQLException: Error while executing SQL "select 
extract(month from "birth_date") as c 
from "foodmart"."employee" where "employee_id"=1": class 
org.apache.calcite.sql.SqlSyntax$6: SPECIAL
        at org.apache.calcite.avatica.Helper.createException(Helper.java:56)
        at org.apache.calcite.avatica.Helper.createException(Helper.java:41)
        at 
org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:156)
        at 
org.apache.calcite.avatica.AvaticaStatement.executeQuery(AvaticaStatement.java:218)
        at 
org.apache.calcite.test.CalciteAssert.assertQuery(CalciteAssert.java:564)
        ... 26 more
Caused by: java.lang.UnsupportedOperationException: class 
org.apache.calcite.sql.SqlSyntax$6: SPECIAL
        at org.apache.calcite.util.Util.needToImplement(Util.java:923)
        at org.apache.calcite.sql.SqlSyntax$6.unparse(SqlSyntax.java:116)
        at org.apache.calcite.sql.SqlOperator.unparse(SqlOperator.java:332)
        at 
org.apache.calcite.sql.SqlDialect$BaseHandler.unparseCall(SqlDialect.java:733)
...
{noformat}




--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to