You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Iurii Gerzhedovich (Jira)" <ji...@apache.org> on 2024/07/22 11:02:00 UTC

[jira] [Created] (IGNITE-22788) Sql. Support of FORMAT clause of the CAST operator

Iurii Gerzhedovich created IGNITE-22788:
-------------------------------------------

             Summary: Sql. Support of  FORMAT clause of the CAST operator
                 Key: IGNITE-22788
                 URL: https://issues.apache.org/jira/browse/IGNITE-22788
             Project: Ignite
          Issue Type: Improvement
          Components: sql
            Reporter: Iurii Gerzhedovich


Calcite 1.37 brings [support  of FORMAT clause of the CAST operator |CALCITE-2980], unfortunately, it doent's work automatically in AI3 and leads to assertion during planning phase. E.g. for query 
{code:java}
select cast('18-12-03' as date format 'YY-MM-DD'){code}
we got 
{code:java}
Caused by: java.lang.AssertionError
    at org.apache.ignite.internal.sql.engine.exec.exp.RexImpTable$CastImplementor.implementSafe(RexImpTable.java:3213)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexImpTable$AbstractRexCallImplementor.genValueStatement(RexImpTable.java:3811)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexImpTable$AbstractRexCallImplementor.implement(RexImpTable.java:3763)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexToLixTranslator.visitCall(RexToLixTranslator.java:1269)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexToLixTranslator.visitCall(RexToLixTranslator.java:113)
    at org.apache.calcite.rex.RexCall.accept(RexCall.java:189)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexToLixTranslator.visitLocalRef(RexToLixTranslator.java:1145)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexToLixTranslator.visitLocalRef(RexToLixTranslator.java:113)
    at org.apache.calcite.rex.RexLocalRef.accept(RexLocalRef.java:77)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexToLixTranslator.translate(RexToLixTranslator.java:274)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexToLixTranslator.translate(RexToLixTranslator.java:268)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexToLixTranslator.translateList(RexToLixTranslator.java:985)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexToLixTranslator.translateProjects(RexToLixTranslator.java:222)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexExecutorImpl.compile(RexExecutorImpl.java:103)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexExecutorImpl.compile(RexExecutorImpl.java:70)
    at org.apache.ignite.internal.sql.engine.exec.exp.RexExecutorImpl.reduce(RexExecutorImpl.java:157)
    at org.apache.calcite.rex.RexSimplify.simplifyCast(RexSimplify.java:2274)
    at org.apache.calcite.rex.RexSimplify.simplify(RexSimplify.java:292)
    at org.apache.calcite.rex.RexSimplify.simplifyUnknownAs(RexSimplify.java:250)
    at org.apache.calcite.rex.RexSimplify.simplifyPreservingType(RexSimplify.java:189)
    at org.apache.calcite.rex.RexSimplify.simplifyPreservingType(RexSimplify.java:184)
    at org.apache.calcite.tools.RelBuilder.lambda$project_$7(RelBuilder.java:2050)
 {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)