eejbyfeldt commented on PR #13252:
URL: https://github.com/apache/datafusion/pull/13252#issuecomment-2464127994

   I think the logic here:
   
https://github.com/jonathanc-n/datafusion/blob/feac9714a172fd7dd96c18b724363bdad8e0d155/datafusion/physical-plan/src/joins/utils.rs#L1289-L1290
   is probably not correct when there is both `LeftMark` and `RightMark`. For 
`RightMark` I would expect us to to need to 
`compute::is_not_null(build_indices)` instead. So we might need to pass the 
join_type to that function in order to implement that.
   
   
   
   I also suspect we might need do more changes in 
`adjust_indices_by_join_type`. I don't think we can just do the same as 
`JoinType::Right` when we have multiple matches. The `Right` will for that case 
produce multiple rows per row from the right side, while the `RightMark` should 
follow similar logic to the `RightSemi` where we remove duplicates. But of 
course we need the unmatched rows like the `Right` join so we might need our 
own adjustment logic.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


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

Reply via email to