Evgeny Stanilovsky created IGNITE-25162:
-------------------------------------------
Summary: Sql. No need to rewind right input for
AbstractRightMaterializedJoinNode implementors if correlates are present in
left input
Key: IGNITE-25162
URL: https://issues.apache.org/jira/browse/IGNITE-25162
Project: Ignite
Issue Type: Task
Components: sql
Affects Versions: 3.0
Reporter: Evgeny Stanilovsky
Seems a bit optimization can be applied if correlate contains in left input of
join, in such a case no need to clear right side (hash store in case of hash
join). If no more items available from left input of upper correlated nested
loop join - seems right input need not to store items more and can clear
appropriate store. All kind of join types need to be covered by tests.
Partial plan example:
{noformat}
HashJoin
condition: =(SS_SOLD_DATE_SK, D_DATE_SK)
joinType: inner
est. row count: 79851
Exchange
distribution: affinity[tableId=31, zoneId=31][0]
est. row count: 959175
TableScan
table: [PUBLIC, STORE_SALES]
filters: =($cor4.C_CUSTOMER_SK, SS_CUSTOMER_SK)
fields: [SS_SOLD_DATE_SK, SS_CUSTOMER_SK]
est. row count: 959175
TableScan
table: [PUBLIC, DATE_DIM]
filters: AND(=(D_YEAR, 2000), >=(D_MOY, 3), <=(D_MOY, +(3, 3)))
fields: [D_DATE_SK, D_YEAR, D_MOY]
est. row count: 6081
{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)