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

Gengliang Wang resolved SPARK-57025.
------------------------------------
    Fix Version/s: 4.3.0
                   5.0.0
       Resolution: Fixed

Issue resolved by pull request 56073
[https://github.com/apache/spark/pull/56073]

> SortMergeJoinExec: extract JoinHelper.resetMatched for full-outer BitSet 
> bookkeeping
> ------------------------------------------------------------------------------------
>
>                 Key: SPARK-57025
>                 URL: https://issues.apache.org/jira/browse/SPARK-57025
>             Project: Spark
>          Issue Type: Sub-task
>          Components: SQL
>    Affects Versions: 5.0.0
>            Reporter: Gengliang Wang
>            Assignee: Gengliang Wang
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 4.3.0, 5.0.0
>
>
> {{SortMergeJoinExec.codegenFullOuter}} and its interpreted counterpart 
> {{SortMergeFullOuterJoinScanner.findMatchingRows}} both duplicate the "reuse 
> the BitSet if its capacity is enough, otherwise allocate a new one" idiom for 
> tracking matched left/right rows.
> Extract it into a static helper
> {code:java}
> JoinHelper.resetMatched(BitSet matched, int bufferSize): BitSet
> {code}
> and call it from the four sites (left + right in each method). Replaces ~16 
> inline lines with 4 helper calls and keeps the codegen and interpreted paths 
> in lockstep.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to