diff --git a/hadoop-mapreduce-project/CHANGES.txt b/hadoop-mapreduce-project/CHANGES.txt index e944d82ac2..7f4c3e7d4d 100644 --- a/hadoop-mapreduce-project/CHANGES.txt +++ b/hadoop-mapreduce-project/CHANGES.txt @@ -379,6 +379,9 @@ Release 2.7.0 - UNRELEASED MAPREDUCE-4286. TestClientProtocolProviderImpls passes on failure conditions. (Devaraj K via ozawa) + MAPREDUCE-6261. NullPointerException if MapOutputBuffer.flush invoked + twice (Tsuyoshi OZAWA via jlowe) + Release 2.6.1 - UNRELEASED INCOMPATIBLE CHANGES diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/MapTask.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/MapTask.java index 1a4901b257..8094317829 100644 --- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/MapTask.java +++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/MapTask.java @@ -1458,6 +1458,10 @@ public void write(byte b[], int off, int len) public void flush() throws IOException, ClassNotFoundException, InterruptedException { LOG.info("Starting flush of map output"); + if (kvbuffer == null) { + LOG.info("kvbuffer is null. Skipping flush."); + return; + } spillLock.lock(); try { while (spillInProgress) {