Aihua Xu created HIVE-13235:
-------------------------------

             Summary: 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


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