cloud-fan commented on code in PR #49202:
URL: https://github.com/apache/spark/pull/49202#discussion_r1893712217


##########
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/Optimizer.scala:
##########
@@ -1831,8 +1838,8 @@ object PushPredicateThroughNonJoin extends 
Rule[LogicalPlan] with PredicateHelpe
       }
 
       if (pushDown.nonEmpty) {
-        val pushDownPredicate = pushDown.reduce(And)

Review Comment:
   More thoughts:
   - I think it's common to reference the same column in multiple 
sub-predicates, e.g. `a > 0 AND a < 10`. The current approach doesn't help with 
this common case.
   - We should improve the predicate split-and-combine process, to only accept 
duplicating large expressions when we have to, i.e. some sub-predicates need to 
be pushed down and some need to stay, and they share the same common 
expressions.



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