Repository: hadoop Updated Branches: refs/heads/branch-2.7 6e7c76a5b -> fc10c9983
MAPREDUCE-6492. AsyncDispatcher exit with NPE on TaskAttemptImpl#sendJHStartEventForAssignedFailTask. Contributed by Bibin A Chundatt (cherry picked from commit ab11085b81353e1617875deb10f3c8e2a8b91a1e) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/fc10c998 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/fc10c998 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/fc10c998 Branch: refs/heads/branch-2.7 Commit: fc10c9983901cd231f8ec959675d741512716b9e Parents: 6e7c76a Author: Jason Lowe <[email protected]> Authored: Mon Sep 28 22:12:03 2015 +0000 Committer: Jason Lowe <[email protected]> Committed: Mon Sep 28 22:13:40 2015 +0000 ---------------------------------------------------------------------- hadoop-mapreduce-project/CHANGES.txt | 4 ++++ .../hadoop/mapreduce/v2/app/job/impl/TaskAttemptImpl.java | 4 +++- .../hadoop/mapreduce/v2/app/job/impl/TestTaskAttempt.java | 8 ++++++++ 3 files changed, 15 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/fc10c998/hadoop-mapreduce-project/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-mapreduce-project/CHANGES.txt b/hadoop-mapreduce-project/CHANGES.txt index 7a002d7..19496a4 100644 --- a/hadoop-mapreduce-project/CHANGES.txt +++ b/hadoop-mapreduce-project/CHANGES.txt @@ -41,6 +41,10 @@ Release 2.7.2 - UNRELEASED MAPREDUCE-5982. Task attempts that fail from the ASSIGNED state can disappear (Chang Li via jlowe) + MAPREDUCE-6492. AsyncDispatcher exit with NPE on + TaskAttemptImpl#sendJHStartEventForAssignedFailTask (Bibin A Chundatt via + jlowe) + Release 2.7.1 - 2015-07-06 INCOMPATIBLE CHANGES http://git-wip-us.apache.org/repos/asf/hadoop/blob/fc10c998/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TaskAttemptImpl.java ---------------------------------------------------------------------- diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TaskAttemptImpl.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TaskAttemptImpl.java index 7aed78a..b27a86c 100644 --- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TaskAttemptImpl.java +++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TaskAttemptImpl.java @@ -1380,7 +1380,9 @@ public abstract class TaskAttemptImpl implements private static void sendJHStartEventForAssignedFailTask(TaskAttemptImpl taskAttempt) { - TaskAttemptContainerLaunchedEvent event; + if (null == taskAttempt.container) { + return; + } taskAttempt.launchTime = taskAttempt.clock.getTime(); InetSocketAddress nodeHttpInetAddr = http://git-wip-us.apache.org/repos/asf/hadoop/blob/fc10c998/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TestTaskAttempt.java ---------------------------------------------------------------------- diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TestTaskAttempt.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TestTaskAttempt.java index e3dd67a..3d1facf 100644 --- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TestTaskAttempt.java +++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TestTaskAttempt.java @@ -753,6 +753,14 @@ public class TestTaskAttempt{ assertFalse( "InternalError occurred trying to handle TA_DIAGNOSTICS_UPDATE on assigned task", eventHandler.internalError); + try { + taImpl.handle(new TaskAttemptEvent(attemptId, + TaskAttemptEventType.TA_KILL)); + Assert.assertTrue("No exception on UNASSIGNED STATE KILL event", true); + } catch (Exception e) { + Assert.assertFalse( + "Exception not expected for UNASSIGNED STATE KILL event", true); + } } @Test
