From 1a51c2c7a0f5dab0832f6b7655d3dfed1ddda733 Mon Sep 17 00:00:00 2001 From: vkorukanti Date: Thu, 7 Aug 2014 14:49:26 -0700 Subject: [PATCH] HIVE-7652: Check OutputCollector after closing ExecMapper/ExecReducer --- .../hadoop/hive/ql/exec/spark/HiveBaseFunctionResultList.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HiveBaseFunctionResultList.java ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HiveBaseFunctionResultList.java index 03500df..6568a76 100644 --- ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HiveBaseFunctionResultList.java +++ ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HiveBaseFunctionResultList.java @@ -107,6 +107,13 @@ public boolean hasNext(){ // At this point we are done processing the input. Close the record processor closeRecordProcessor(); + + // It is possible that some operators add records after closing the processor, so make sure + // to check the lastRecordOutput + if (lastRecordOutput.hasNext()) { + return true; + } + lastRecordOutput.clear(); return false; } -- 1.8.5.2 (Apple Git-48)