Eric Lin created HIVE-12788:
-------------------------------
Summary: 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
See the test case below:
{code}
0: jdbc:hive2://localhost:10000/default> create table test (a int);
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}
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> SELECT COUNT(1) FROM test UNION ALL
SELECT COUNT(1) FROM test;
+----------+--+
| _u1._c0 |
+----------+--+
| 1 |
| 1 |
+----------+--+
{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}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)