hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chaoyu Tang (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HIVE-12788) Setting hive.optimize.union.remove to TRUE will break UNION ALL with aggregate functions
Date Wed, 13 Jan 2016 16:02:40 GMT

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

Chaoyu Tang updated HIVE-12788:
-------------------------------
    Attachment: HIVE-12788-branch-1.patch

> Setting hive.optimize.union.remove to TRUE will break UNION ALL with aggregate functions
> ----------------------------------------------------------------------------------------
>
>                 Key: HIVE-12788
>                 URL: https://issues.apache.org/jira/browse/HIVE-12788
>             Project: Hive
>          Issue Type: Bug
>          Components: Hive
>    Affects Versions: 1.1.1
>            Reporter: Eric Lin
>            Assignee: Chaoyu Tang
>         Attachments: HIVE-12788-branch-1.patch, HIVE-12788.1.patch, HIVE-12788.patch
>
>
> See the test case below:
> {code}
> 0: jdbc:hive2://localhost:10000/default> create table test (a int);
> 0: jdbc:hive2://localhost:10000/default> insert overwrite table test values (1);
> 0: jdbc:hive2://localhost:10000/default> set hive.optimize.union.remove=true;
> No rows affected (0.01 seconds)
> 0: jdbc:hive2://localhost:10000/default> set hive.mapred.supports.subdirectories=true;
> No rows affected (0.007 seconds)
> 0: jdbc:hive2://localhost:10000/default> SELECT COUNT(1) FROM test UNION ALL SELECT
COUNT(1) FROM test;
> +----------+--+
> | _u1._c0  |
> +----------+--+
> +----------+--+
> {code}
> UNION ALL without COUNT function will work as expected:
> {code}
> 0: jdbc:hive2://localhost:10000/default> select * from test UNION ALL SELECT * FROM
test;
> +--------+--+
> | _u1.a  |
> +--------+--+
> | 1      |
> | 1      |
> +--------+--+
> {code}
> Run the same query without setting hive.mapred.supports.subdirectories and hive.optimize.union.remove
to true will give correct result:
> {code}
> 0: jdbc:hive2://localhost:10000/default> set hive.optimize.union.remove;
> +-----------------------------------+--+
> |                set                |
> +-----------------------------------+--+
> | hive.optimize.union.remove=false  |
> +-----------------------------------+--+
> 0: jdbc:hive2://localhost:10000/default> SELECT COUNT(1) FROM test UNION ALL SELECT
COUNT(1) FROM test;
> +----------+--+
> | _u1._c0  |
> +----------+--+
> | 1        |
> | 1        |
> +----------+--+
> {code}



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

Mime
View raw message