[
https://issues.apache.org/jira/browse/HIVE-7765?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14605728#comment-14605728
]
Alex Bush commented on HIVE-7765:
---------------------------------
Here is how to recreate this bug and use the workaround:
#!/bin/bash
echo "col1,col2" > /tmp/unionall_txt
HIVECONF="--hiveconf hive.root.logger=INFO,console --hiveconf
hive.cli.errors.ignore=true"
hive -v $HIVECONF -e "
drop database if exists unionall_test cascade;
create database unionall_test;
use unionall_test;
CREATE TABLE test_a (f1 STRING, f2 STRING) PARTITIONED BY (ds STRING);
CREATE TABLE test_b (f1 STRING, f2 STRING) PARTITIONED BY (ds STRING);
LOAD DATA LOCAL INPATH '/tmp/unionall_txt' OVERWRITE INTO TABLE test_a
PARTITION ( ds='a' );
SELECT * FROM test_a
UNION ALL
SELECT * FROM test_b;
alter table test_b add partition ( ds='b' );
SELECT * FROM test_a
UNION ALL
SELECT * FROM test_b;
"
> Null pointer error with UNION ALL on partitioned tables using Tez
> -----------------------------------------------------------------
>
> Key: HIVE-7765
> URL: https://issues.apache.org/jira/browse/HIVE-7765
> Project: Hive
> Issue Type: Bug
> Affects Versions: 0.14.0, 0.13.1
> Environment: Tez 0.4.1, Ubuntu 12.04, Hadoop 2.4.1.
> Reporter: Chris Dragga
> Priority: Minor
>
> When executing a UNION ALL query in Tez over partitioned tables where at
> least one table is empty, Hive fails to execute the query, returning the
> message "FAILED: NullPointerException null". No stack trace accompanies this
> message. Removing partitioning solves this problem, as does switching to
> MapReduce as the execution engine.
> This can be reproduced using a variant of the example tables from the
> "Getting Started" documentation on the Hive wiki. To create the schema, use
> CREATE TABLE invites (foo INT, bar STRING) PARTITIONED BY (ds STRING);
> CREATE TABLE empty_invites (foo INT, bar STRING) PARTITIONED BY (ds STRING);
> Then, load invites with data (e.g., using the instructions
> [here|https://cwiki.apache.org/confluence/display/Hive/GettingStarted#GettingStarted-DMLOperations])
> and execute the following:
> SELECT * FROM invites
> UNION ALL
> SELECT * FROM empty_invites;
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)