You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Pengcheng Xiong (JIRA)" <ji...@apache.org> on 2017/05/31 21:54:05 UTC

[jira] [Created] (HIVE-16797) Support a new rule RemoveUnionBranchRule

Pengcheng Xiong created HIVE-16797:
--------------------------------------

             Summary: Support a new rule RemoveUnionBranchRule
                 Key: HIVE-16797
                 URL: https://issues.apache.org/jira/browse/HIVE-16797
             Project: Hive
          Issue Type: Bug
            Reporter: Pengcheng Xiong
            Assignee: Pengcheng Xiong


in query4.q, we can see that it creates a CTE with union all of 3 branches. Then it is going to do a 3 way self-join of the CTE with predicates. The predicates actually specifies only one of the branch in CTE to participate in the join. Thus, in some cases, e.g.,
{code}
               /- filter(false) -----TS0 
union all  - filter(false) -----TS1
               \-----TS2
{code}
we can cut the branches of TS0 and TS1. The union becomes only TS2.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)