You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Aihua Xu (JIRA)" <ji...@apache.org> on 2016/03/08 22:26:41 UTC

[jira] [Created] (HIVE-13235) Insert from select generates incorrect result when hive.optimize.constant.propagation is on

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)