foxtail463 opened a new pull request, #65250:
URL: https://github.com/apache/doris/pull/65250

   Problem Summary:
   Outer join elimination uses fold-based null-reject inference to decide 
whether
   nullable-side rows from the current outer join can be filtered away. This 
check
   only needs slots from that join's nullable-side outputs, but the previous 
flow
   could also test unrelated predicate inputs. When a filter predicate 
references a
   mark slot produced by another join, folding that slot is useless for 
eliminating
   the current outer join and can be costly when the fixed-point rewrite batch
   revisits the same predicate multiple times.
   
   Solution:
   Add an API to infer null-rejecting slots only for a given target slot set, 
and
   use the current join's nullable-side outputs as that target in
   EliminateOuterJoin. Skip mark-join slots as inference targets, preserve the
   existing expression complexity limits, and avoid rewriting when the join type
   does not change.


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