Xiao Li created SPARK-12613:
-------------------------------

             Summary: Elimination of Outer Join by Parent Join Condition
                 Key: SPARK-12613
                 URL: https://issues.apache.org/jira/browse/SPARK-12613
             Project: Spark
          Issue Type: Improvement
          Components: SQL
    Affects Versions: 1.6.0
            Reporter: Xiao Li
            Priority: Critical


Given an outer join is involved in another join (called parent join), when the 
join type of the parent join is inner, left-semi, left-outer and right-outer, 
checking if the join condition of the parent join satisfies the following two 
conditions:
 1) there exist null filtering predicates against the columns in the 
null-supplying side of parent join.
 2) these columns are from the child join.

 If having such join predicates, execute the elimination rules:
 - full outer -> inner if both sides of the child join have such predicates
 - left outer -> inner if the right side of the child join has such predicates
 - right outer -> inner if the left side of the child join has such predicates
 - full outer -> left outer if only the left side of the child join has such 
predicates
 - full outer -> right outer if only the right side of the child join has such 
predicates



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org
For additional commands, e-mail: issues-h...@spark.apache.org

Reply via email to