[
https://issues.apache.org/jira/browse/IGNITE-21421?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17993131#comment-17993131
]
Aleksey Plekhanov commented on IGNITE-21421:
--------------------------------------------
Now worked after update to Calcite 1.40, but can't be used as index bounds.
Need to implement bounds build by row comparison condition.
> Calcite engine. Tuple (row) comparison is not working
> -----------------------------------------------------
>
> Key: IGNITE-21421
> URL: https://issues.apache.org/jira/browse/IGNITE-21421
> Project: Ignite
> Issue Type: Bug
> Reporter: Aleksey Plekhanov
> Assignee: Aleksey Plekhanov
> Priority: Major
> Labels: ise
>
> Currentrly, row comparison fails with an error and don't use index.
> Reproducer:
> {code:java}
> sql("CREATE TABLE test (id INTEGER, val INTEGER)");
> sql("CREATE INDEX test_idx ON test (id, val)");
> sql("INSERT INTO test VALUES (0, 0), (0, 1), (1, 0), (1, 1)");
> assertQuery("SELECT * FROM test WHERE (id, val) >= (?, ?)")
> .withParams(0, 1)
> //.matches(QueryChecker.containsIndexScan("PUBLIC", "TEST", "TEST_IDX"))
> .returns(0, 1)
> .returns(1, 0)
> .returns(1, 1)
> .check(); {code}
> Exception:
> {noformat}
> Caused by: java.lang.RuntimeException: while resolving method 'ge[class
> [Ljava.lang.Object;, class [Ljava.lang.Object;]' in class class
> org.apache.calcite.runtime.SqlFunctions
> at org.apache.calcite.linq4j.tree.Types.lookupMethod(Types.java:318)
> at org.apache.calcite.linq4j.tree.Expressions.call(Expressions.java:449)
> at
> org.apache.ignite.internal.processors.query.calcite.exec.exp.RexImpTable$BinaryImplementor.implementSafe(RexImpTable.java:1233)
> at
> org.apache.ignite.internal.processors.query.calcite.exec.exp.RexImpTable$AbstractRexCallImplementor.genValueStatement(RexImpTable.java:1950)
> at
> org.apache.ignite.internal.processors.query.calcite.exec.exp.RexImpTable$AbstractRexCallImplementor.implement(RexImpTable.java:1911)
> {noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)