[ 
https://issues.apache.org/jira/browse/IGNITE-27765?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pavel Pereslegin updated IGNITE-27765:
--------------------------------------
    Summary: Sql. Support batching for correlate variables in 
CorrelatedNestedLoopJoinNode  (was: Sql. Support batching in 
CorrelatedNestedLoopJoinNode)

> Sql. Support batching for correlate variables in CorrelatedNestedLoopJoinNode
> -----------------------------------------------------------------------------
>
>                 Key: IGNITE-27765
>                 URL: https://issues.apache.org/jira/browse/IGNITE-27765
>             Project: Ignite
>          Issue Type: Improvement
>          Components: sql ai3
>            Reporter: Pavel Pereslegin
>            Priority: Major
>              Labels: ignite-3
>
> As for now, a SharedState class for storing correlates in execution context 
> and is used by CorrelatedNestedLoopJoinNode (CNLJN) execution node.
> Seems, CorrelatedNestedLoopJoinNode was designed to use batching for 
> correlates variables, to transfer many rows at a time, but implemented in 
> wrong way, and this just don't work.
> We should fix the SharedState class to make batching possible, by allowing 
> set multiple rows for the same correlate id. 
> Most likely, we must keep correlates hierarchy order to preserve CNLJN 
> collation. Correlate id number doesn't have this guarantee) in case of more 
> than one correlate.
> It may turn out that passing batches for parent correlates is useless, 
> because we can spool only child batch at a time to preserve the collation.
> Thus, SharedState maybe split or changed it's structure, to separate 
> correlates, which where received from parent fragment, and current correlates 
> to be passed to child fragment.
> Let's improve SharedState class structure to support batching, by allowing 
> multiple rows for same correlate and resolve ordering issue (if it exists).



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

Reply via email to