From dd0627db41b5e47197c7fd2ffd130cc849386af7 Mon Sep 17 00:00:00 2001 From: Ryan Blue Date: Fri, 25 Jul 2014 18:26:45 -0700 Subject: [PATCH] HIVE-7459: Fix Hive NPE when using CombineHiveInputFormat. This fix is by Matt Martin. CombineHiveInputFormat reuses the key and value from the first file for subsequent files. If the first file is empty, then the initial value from createValue was null because this mapred InputFormat wraps a mapreduce InputFormat and initializes the value only if the wrapped format returned true in nextKeyValue. --- .../hadoop/hive/ql/io/parquet/read/ParquetRecordReaderWrapper.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/read/ParquetRecordReaderWrapper.java b/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/read/ParquetRecordReaderWrapper.java index e1a7a48..f5da46d 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/read/ParquetRecordReaderWrapper.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/read/ParquetRecordReaderWrapper.java @@ -104,9 +104,9 @@ public ParquetRecordReaderWrapper( } else { realReader = null; eof = true; - if (valueObj == null) { // Should initialize the value for createValue - valueObj = new ArrayWritable(Writable.class, new Writable[schemaSize]); - } + } + if (valueObj == null) { // Should initialize the value for createValue + valueObj = new ArrayWritable(Writable.class, new Writable[schemaSize]); } } -- 1.9.1