Yu Xu created CALCITE-7014:
------------------------------
Summary: Support EQUAL/GreaterThanOrEqual/LessThanOrEqual
expressions to RexNode In CalcitePrepare
Key: CALCITE-7014
URL: https://issues.apache.org/jira/browse/CALCITE-7014
Project: Calcite
Issue Type: Improvement
Components: core
Affects Versions: 1.39.0
Reporter: Yu Xu
Assignee: Yu Xu
Fix For: 1.40.0
Currently CalcitePrepare can not support convert
Equal/GreaterThanOrEqual/LessThanOrEqua expression to RexNode, when can related
JDBC query would error out:
{code:java}
unknown expression type Equal e.empid == 150
java.lang.UnsupportedOperationException: unknown expression type Equal e.empid
== 150
at
org.apache.calcite.prepare.CalcitePrepareImpl$EmptyScalarTranslator.toRex(CalcitePrepareImpl.java:1379)
at
org.apache.calcite.prepare.CalcitePrepareImpl$EmptyScalarTranslator.toRex(CalcitePrepareImpl.java:1302)
at
org.apache.calcite.prepare.LixToRelTranslator.toRex(LixToRelTranslator.java:208)
at
org.apache.calcite.prepare.QueryableRelBuilder.where(QueryableRelBuilder.java:760)
at
org.apache.calcite.linq4j.QueryableRecorder$99.replay(QueryableRecorder.java:1016)
at
org.apache.calcite.prepare.QueryableRelBuilder.toRel(QueryableRelBuilder.java:98)
{code}
{code:java}
unknown expression type GreaterThanOrEqual e.empid >= 150
java.lang.UnsupportedOperationException: unknown expression type
GreaterThanOrEqual e.empid >= 150 at
org.apache.calcite.prepare.CalcitePrepareImpl$EmptyScalarTranslator.toRex(CalcitePrepareImpl.java:1379)
at
org.apache.calcite.prepare.CalcitePrepareImpl$EmptyScalarTranslator.toRex(CalcitePrepareImpl.java:1302)
at
org.apache.calcite.prepare.LixToRelTranslator.toRex(LixToRelTranslator.java:208)
at
org.apache.calcite.prepare.QueryableRelBuilder.where(QueryableRelBuilder.java:760)
at
org.apache.calcite.linq4j.QueryableRecorder$99.replay(QueryableRecorder.java:1016)
at
org.apache.calcite.prepare.QueryableRelBuilder.toRel(QueryableRelBuilder.java:98)
{code}
{code:java}
unknown expression type LessThanOrEqual e.empid <= 150
java.lang.UnsupportedOperationException: unknown expression type
GreaterThanOrEqual e.empid >= 150
at
org.apache.calcite.prepare.CalcitePrepareImpl$EmptyScalarTranslator.toRex(CalcitePrepareImpl.java:1379)
at
org.apache.calcite.prepare.CalcitePrepareImpl$EmptyScalarTranslator.toRex(CalcitePrepareImpl.java:1302)
at
org.apache.calcite.prepare.LixToRelTranslator.toRex(LixToRelTranslator.java:208)
at
org.apache.calcite.prepare.QueryableRelBuilder.where(QueryableRelBuilder.java:760)
at
org.apache.calcite.linq4j.QueryableRecorder$99.replay(QueryableRecorder.java:1016)
at
org.apache.calcite.prepare.QueryableRelBuilder.toRel(QueryableRelBuilder.java:98)
{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)