alamb commented on code in PR #13134:
URL: https://github.com/apache/datafusion/pull/13134#discussion_r1821457224


##########
datafusion/physical-plan/src/joins/sort_merge_join.rs:
##########
@@ -784,6 +790,29 @@ fn get_corrected_filter_mask(
             corrected_mask.extend(vec![Some(false); null_matched]);
             Some(corrected_mask.finish())
         }
+        JoinType::LeftMark => {
+            for i in 0..row_indices_length {
+                let last_index =
+                    last_index_for_row(i, row_indices, batch_ids, 
row_indices_length);
+                if filter_mask.value(i) && !seen_true {

Review Comment:
   yes, 100% documenting the semantics of Left Mark Join will be very important



##########
datafusion/common/src/join_type.rs:
##########
@@ -44,6 +44,8 @@ pub enum JoinType {
     LeftAnti,
     /// Right Anti Join
     RightAnti,
+    /// Left Mark join, used for correlated subqueries EXIST/IN

Review Comment:
   I am not familar with what a LeftMarkJoin is -- can we add some additional 
context here (e.g. maybe based on the PR's description with a link to the ) to 
help future readers



-- 
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