hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yongzhi Chen (JIRA)" <>
Subject [jira] [Commented] (HIVE-12008) Make last two tests added by HIVE-11384 pass when is false
Date Thu, 19 Nov 2015 16:26:11 GMT


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 is false
> -----------------------------------------------------------------------
>                 Key: HIVE-12008
>                 URL:
>             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 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

View raw message