Revert "YARN-4452. NPE when submit Unmanaged application. Contributed by Naganarasimha G R."
This reverts commit face83775bbfd4fd0387404461dfc963729164c1. Conflicts: hadoop-yarn-project/CHANGES.txt Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/6cf2fa36 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/6cf2fa36 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/6cf2fa36 Branch: refs/heads/branch-2.7 Commit: 6cf2fa36b33b3f326439d9680a3ab3119918987c Parents: 70e53cf Author: Jason Lowe <jl...@apache.org> Authored: Mon Jan 25 16:26:00 2016 +0000 Committer: Jason Lowe <jl...@apache.org> Committed: Mon Jan 25 16:26:00 2016 +0000 ---------------------------------------------------------------------- hadoop-yarn-project/CHANGES.txt | 3 -- .../metrics/SystemMetricsPublisher.java | 11 +++---- .../metrics/TestSystemMetricsPublisher.java | 34 ++++---------------- 3 files changed, 10 insertions(+), 38 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/6cf2fa36/hadoop-yarn-project/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index 75902ef..cf47bce 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -51,9 +51,6 @@ Release 2.7.3 - UNRELEASED YARN-4439. Clarify NMContainerStatus#toString method. (Jian He via xgong) - YARN-4452. NPE when submit Unmanaged application. (Naganarasimha G R - via junping_du) - YARN-4546. ResourceManager crash due to scheduling opportunity overflow. (Jason Lowe via junping_du) http://git-wip-us.apache.org/repos/asf/hadoop/blob/6cf2fa36/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/metrics/SystemMetricsPublisher.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/metrics/SystemMetricsPublisher.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/metrics/SystemMetricsPublisher.java index 5cb8a3c..4d52b38 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/metrics/SystemMetricsPublisher.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/metrics/SystemMetricsPublisher.java @@ -142,8 +142,6 @@ public class SystemMetricsPublisher extends CompositeService { public void appAttemptRegistered(RMAppAttempt appAttempt, long registeredTime) { if (publishSystemMetrics) { - ContainerId container = (appAttempt.getMasterContainer() == null) ? null - : appAttempt.getMasterContainer().getId(); dispatcher.getEventHandler().handle( new AppAttemptRegisteredEvent( appAttempt.getAppAttemptId(), @@ -151,7 +149,7 @@ public class SystemMetricsPublisher extends CompositeService { appAttempt.getRpcPort(), appAttempt.getTrackingUrl(), appAttempt.getOriginalTrackingUrl(), - container, + appAttempt.getMasterContainer().getId(), registeredTime)); } } @@ -337,10 +335,9 @@ public class SystemMetricsPublisher extends CompositeService { event.getHost()); eventInfo.put(AppAttemptMetricsConstants.RPC_PORT_EVENT_INFO, event.getRpcPort()); - if (event.getMasterContainerId() != null) { - eventInfo.put(AppAttemptMetricsConstants.MASTER_CONTAINER_EVENT_INFO, - event.getMasterContainerId().toString()); - } + eventInfo.put( + AppAttemptMetricsConstants.MASTER_CONTAINER_EVENT_INFO, + event.getMasterContainerId().toString()); tEvent.setEventInfo(eventInfo); entity.addEvent(tEvent); putEntity(entity); http://git-wip-us.apache.org/repos/asf/hadoop/blob/6cf2fa36/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/metrics/TestSystemMetricsPublisher.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/metrics/TestSystemMetricsPublisher.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/metrics/TestSystemMetricsPublisher.java index 32f677b..7ed3835 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/metrics/TestSystemMetricsPublisher.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/metrics/TestSystemMetricsPublisher.java @@ -194,30 +194,10 @@ public class TestSystemMetricsPublisher { } @Test(timeout = 10000) - public void testPublishAppAttemptMetricsForUnmanagedAM() throws Exception { - ApplicationAttemptId appAttemptId = - ApplicationAttemptId.newInstance(ApplicationId.newInstance(0, 1), 1); - RMAppAttempt appAttempt = createRMAppAttempt(appAttemptId,true); - metricsPublisher.appAttemptRegistered(appAttempt, Integer.MAX_VALUE + 1L); - RMApp app = mock(RMApp.class); - when(app.getFinalApplicationStatus()).thenReturn(FinalApplicationStatus.UNDEFINED); - metricsPublisher.appAttemptFinished(appAttempt, RMAppAttemptState.FINISHED, app, - Integer.MAX_VALUE + 2L); - TimelineEntity entity = null; - do { - entity = - store.getEntity(appAttemptId.toString(), - AppAttemptMetricsConstants.ENTITY_TYPE, - EnumSet.allOf(Field.class)); - // ensure two events are both published before leaving the loop - } while (entity == null || entity.getEvents().size() < 2); - } - - @Test(timeout = 10000) public void testPublishAppAttemptMetrics() throws Exception { ApplicationAttemptId appAttemptId = ApplicationAttemptId.newInstance(ApplicationId.newInstance(0, 1), 1); - RMAppAttempt appAttempt = createRMAppAttempt(appAttemptId, false); + RMAppAttempt appAttempt = createRMAppAttempt(appAttemptId); metricsPublisher.appAttemptRegistered(appAttempt, Integer.MAX_VALUE + 1L); RMApp app = mock(RMApp.class); when(app.getFinalApplicationStatus()).thenReturn(FinalApplicationStatus.UNDEFINED); @@ -376,17 +356,15 @@ public class TestSystemMetricsPublisher { } private static RMAppAttempt createRMAppAttempt( - ApplicationAttemptId appAttemptId, boolean unmanagedAMAttempt) { + ApplicationAttemptId appAttemptId) { RMAppAttempt appAttempt = mock(RMAppAttempt.class); when(appAttempt.getAppAttemptId()).thenReturn(appAttemptId); when(appAttempt.getHost()).thenReturn("test host"); when(appAttempt.getRpcPort()).thenReturn(-100); - if (!unmanagedAMAttempt) { - Container container = mock(Container.class); - when(container.getId()) - .thenReturn(ContainerId.newContainerId(appAttemptId, 1)); - when(appAttempt.getMasterContainer()).thenReturn(container); - } + Container container = mock(Container.class); + when(container.getId()) + .thenReturn(ContainerId.newContainerId(appAttemptId, 1)); + when(appAttempt.getMasterContainer()).thenReturn(container); when(appAttempt.getDiagnostics()).thenReturn("test diagnostics info"); when(appAttempt.getTrackingUrl()).thenReturn("test tracking url"); when(appAttempt.getOriginalTrackingUrl()).thenReturn(