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

Aleksey Vovchenko updated HIVE-12749:
-------------------------------------
    Fix Version/s: 2.0.1

> Constant propagate returns string values in incorrect format
> ------------------------------------------------------------
>
>                 Key: HIVE-12749
>                 URL: https://issues.apache.org/jira/browse/HIVE-12749
>             Project: Hive
>          Issue Type: Bug
>    Affects Versions: 1.0.0, 1.2.0
>            Reporter: Oleksiy Sayankin
>            Assignee: Aleksey Vovchenko
>             Fix For: 2.0.1
>
>         Attachments: HIVE-12749.1.patch, HIVE-12749.2.patch, 
> HIVE-12749.3.patch, HIVE-12749.4.patch, HIVE-12749.5.patch, 
> HIVE-12749.6.patch, HIVE-12749.7.patch
>
>
> h2. STEP 1. Create and upload test data
> Execute in command line:
> {noformat}
> nano stest.data
> {noformat}
> Add to file:
> {noformat}
> 000126,000777
> 000126,000778
> 000126,000779
> 000474,000888
> 000468,000889
> 000272,000880
> {noformat}
> {noformat}
> hadoop fs -put stest.data /
> {noformat}
> {noformat}
> hive> create table stest(x STRING, y STRING) ROW FORMAT DELIMITED FIELDS 
> TERMINATED BY ',';
> hive> LOAD DATA  INPATH '/stest.data' OVERWRITE INTO TABLE stest;
> {noformat}
> h2. STEP 2. Execute test query (with cast for x)
> {noformat}
> select x from stest where cast(x as int) = 126;
> {noformat}
> EXPECTED RESULT:
> {noformat}
> 000126
> 000126
> 000126
> {noformat}
> ACTUAL RESULT:
> {noformat}
> 126
> 126
> 126
> {noformat}
> h2. STEP 3. Execute test query (no cast for x)
> {noformat}
> hive> select x from stest where  x = 126; 
> {noformat}
> EXPECTED RESULT:
> {noformat}
> 000126
> 000126
> 000126
> {noformat}
> ACTUAL RESULT:
> {noformat}
> 126
> 126
> 126
> {noformat}
> In steps #2, #3 I expected '000126' because the origin type of x is STRING in 
> stest table.
> Note, setting hive.optimize.constant.propagation=false fixes the issue.
> {noformat}
> hive> set hive.optimize.constant.propagation=false;
> hive> select x from stest where  x = 126;
> OK
> 000126
> 000126
> 000126
> {noformat}
> Related to HIVE-11104, HIVE-8555



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

Reply via email to