[
https://issues.apache.org/jira/browse/HIVE-20881?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Zoltan Haindrich updated HIVE-20881:
------------------------------------
Attachment: HIVE-20881.01.patch
> Constant propagation oversimplifies projections
> -----------------------------------------------
>
> Key: HIVE-20881
> URL: https://issues.apache.org/jira/browse/HIVE-20881
> Project: Hive
> Issue Type: Bug
> Reporter: Zoltan Haindrich
> Assignee: Zoltan Haindrich
> Priority: Major
> Attachments: HIVE-20881.01.patch
>
>
> {code:java}
> create table cx2(bool1 boolean);
> insert into cx2 values (true),(false),(null);
> set hive.cbo.enable=true;
> select bool1 IS TRUE OR (cast(NULL as boolean) AND bool1 IS NOT TRUE AND
> bool1 IS NOT FALSE) from cx2;
> +--------+
> | _c0 |
> +--------+
> | true |
> | false |
> | NULL |
> +--------+
> set hive.cbo.enable=false;
> select bool1 IS TRUE OR (cast(NULL as boolean) AND bool1 IS NOT TRUE AND
> bool1 IS NOT FALSE) from cx2;
> +-------+
> | _c0 |
> +-------+
> | true |
> | NULL |
> | NULL |
> +-------+
> {code}
> from explain it seems the expression was simplified to: {{(_col0 is true or
> null)}}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)