Gengliang Wang created SPARK-31919:
--------------------------------------

             Summary: Push down more predicates through Join
                 Key: SPARK-31919
                 URL: https://issues.apache.org/jira/browse/SPARK-31919
             Project: Spark
          Issue Type: Improvement
          Components: SQL
    Affects Versions: 3.1.0
            Reporter: Gengliang Wang
            Assignee: Gengliang Wang


Currently, in `PushPredicateThroughJoin`, if the condition predicate of `Or` 
operator can't be entirely pushed down, it will be thrown away. 
In fact, the predicates under `Or` operators can be partially pushed down.
For example, says `a` and `b` are able to be pushed into one of the joined 
tables, while `c` can't be pushed down, the predicate
`a or (b and c)` 
can be converted as 
`(a or b) and (a or c)`
We can still push down `(a or b)`.
We can't push down disjunctive predicates only when one of its children is not 
partially convertible.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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

Reply via email to