[ 
https://issues.apache.org/jira/browse/HIVE-13235?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Aihua Xu updated HIVE-13235:
----------------------------
    Status: Patch Available  (was: Open)

Attached the patch-1: seems we are trying to resolve the column info from the 
parent OP to child OP by alias. But alias should be visible to the children and 
the internalName is visible to the parents.

> Insert from select generates incorrect result when 
> hive.optimize.constant.propagation is on
> -------------------------------------------------------------------------------------------
>
>                 Key: HIVE-13235
>                 URL: https://issues.apache.org/jira/browse/HIVE-13235
>             Project: Hive
>          Issue Type: Bug
>          Components: Query Planning
>    Affects Versions: 2.0.0
>            Reporter: Aihua Xu
>            Assignee: Aihua Xu
>         Attachments: HIVE-13235.1.patch
>
>
> The following query returns incorrect result when constant optimization is 
> turned on. The subquery happens to have an alias p1 to be the same as the 
> input partition name. Constant optimizer will optimize it incorrectly as the 
> constant.
> When constant optimizer is turned off, we will get the correct result.
> {noformat}
> set hive.cbo.enable=false;
> set hive.optimize.constant.propagation = true;
> create table t1(c1 string, c2 double) partitioned by (p1 string, p2 string);
> create table t2(p1 double, c2 string);
> insert into table t1 partition(p1='40', p2='p2') values('c1', 0.0);
> INSERT OVERWRITE TABLE t2  select if((c2 = 0.0), c2, '0') as p1, 2 as p2 from 
> t1 where c1 = 'c1' and p1 = '40';
> select * from t2;
> 40   2
> {noformat}



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

Reply via email to