[ https://issues.apache.org/jira/browse/IGNITE-15984?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aleksey Plekhanov resolved IGNITE-15984. ---------------------------------------- Fix Version/s: 2.15 Resolution: Fixed Resolved by Calcite version upgrade > Calcite engine. Query plan can't be planned if correlated variable used in > both filter and project > -------------------------------------------------------------------------------------------------- > > Key: IGNITE-15984 > URL: https://issues.apache.org/jira/browse/IGNITE-15984 > Project: Ignite > Issue Type: Bug > Reporter: Aleksey Plekhanov > Priority: Major > Labels: calcite2-required, calcite3-required > Fix For: 2.15 > > > For example, query: > {noformat} > CREATE TABLE test(i INT) > SELECT (SELECT t0.i FROM test t1 WHERE t1.i = t0.i) FROM test t0 > {noformat} > Fails, but if we make project uncorrelated: > {noformat} > SELECT (SELECT t1.i FROM test t1 WHERE t1.i = t0.i) FROM test t0 > {noformat} > Or remove correlated filter: > {noformat} > SELECT (SELECT t0.i FROM test t1) FROM test t0 > {noformat} > Query executes successfully. > Reson: for filter and for project new correlates are created each time, but > {{SubQueryRemoveRule}} expects only one correlate to build > {{LogicalCorrelate}} relational operator. If the count of correlates is not > equal to one - a regular join is created and the query can't be planned. -- This message was sent by Atlassian Jira (v8.20.10#820010)