Repository: hadoop Updated Branches: refs/heads/trunk 25a044023 -> 298d09c9b
MAPREDUCE-6194. Bubble up final exception in failures during creation of output collectors. Contributed by Varun Saxena. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/298d09c9 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/298d09c9 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/298d09c9 Branch: refs/heads/trunk Commit: 298d09c9b583088f364038adcb1edf1eb1c2c196 Parents: 25a0440 Author: Harsh J <ha...@cloudera.com> Authored: Mon Dec 15 14:26:22 2014 +0530 Committer: Harsh J <ha...@cloudera.com> Committed: Mon Dec 15 14:26:43 2014 +0530 ---------------------------------------------------------------------- hadoop-mapreduce-project/CHANGES.txt | 3 +++ .../src/main/java/org/apache/hadoop/mapred/MapTask.java | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/298d09c9/hadoop-mapreduce-project/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-mapreduce-project/CHANGES.txt b/hadoop-mapreduce-project/CHANGES.txt index a6475b1..191526a 100644 --- a/hadoop-mapreduce-project/CHANGES.txt +++ b/hadoop-mapreduce-project/CHANGES.txt @@ -235,6 +235,9 @@ Release 2.7.0 - UNRELEASED IMPROVEMENTS + MAPREDUCE-6194. Bubble up final exception in failures during creation + of output collectors (Varun Saxena via harsh) + MAPREDUCE-5420. Remove mapreduce.task.tmp.dir from mapred-default.xml (James Carman via harsh) http://git-wip-us.apache.org/repos/asf/hadoop/blob/298d09c9/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/MapTask.java ---------------------------------------------------------------------- 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 75b4141..1a4901b 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 @@ -387,6 +387,7 @@ public class MapTask extends Task { Class<?>[] collectorClasses = job.getClasses( JobContext.MAP_OUTPUT_COLLECTOR_CLASS_ATTR, MapOutputBuffer.class); int remainingCollectors = collectorClasses.length; + Exception lastException = null; for (Class clazz : collectorClasses) { try { if (!MapOutputCollector.class.isAssignableFrom(clazz)) { @@ -406,10 +407,12 @@ public class MapTask extends Task { if (--remainingCollectors > 0) { msg += " (" + remainingCollectors + " more collector(s) to try)"; } + lastException = e; LOG.warn(msg, e); } } - throw new IOException("Unable to initialize any output collector"); + throw new IOException("Initialization of all the collectors failed. " + + "Error in last collector was :" + lastException.getMessage(), lastException); } @SuppressWarnings("unchecked")