[ 
https://issues.apache.org/jira/browse/HIVE-12008?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15013792#comment-15013792
 ] 

Yongzhi Chen commented on HIVE-12008:
-------------------------------------

patch 4 is majorly to fix the change of behavior caused by HIVE-11333(some 1.1 
version passed tests throw exception with the fix of HIVE-11333) . This issue 
is when union has empty prunelist, if it has only one parent, its parent's call 
:
 public List<String> genColLists(Operator<? extends OperatorDesc> curOp)
with HIVE-11333 return null, without HIVE-11333 return empty.
Return empty is a correct behavior, 
 1. Return empty consistent with another method, the following method return 
empty when child union is empty.
     public List<String> genColLists(Operator<? extends OperatorDesc> curOp, 
Operator<? extends OperatorDesc> child)
  2. Selector treat prunelist null as everything and empty as nothing. When 
union prunelist is empty, it means no column will be needed by its children(it 
is often because of the return is a constant). It does not mean every column. 

I also change back some test outputs which changed by HIVE-11333 (the 12 qfile 
output changes are all query plan changes).
And make union operator more forgiving when Union has no columns to avoid some 
unnecessary assert error. 


> Make last two tests added by HIVE-11384 pass when hive.in.test is false
> -----------------------------------------------------------------------
>
>                 Key: HIVE-12008
>                 URL: https://issues.apache.org/jira/browse/HIVE-12008
>             Project: Hive
>          Issue Type: Bug
>    Affects Versions: 2.0.0
>            Reporter: Yongzhi Chen
>            Assignee: Yongzhi Chen
>         Attachments: HIVE-12008.1.patch, HIVE-12008.2.patch, 
> HIVE-12008.3.patch, HIVE-12008.4.patch
>
>
> The last two qfile unit tests fail when hive.in.test is false. It may relate 
> how we handle prunelist for select. When select include every column in a 
> table, the prunelist for the select is empty. It may cause issues to 
> calculate its parent's prunelist.. 



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

Reply via email to