commit 45eb138a7259aef2972cd7b5ac78d47d02474ec4 Author: Eric Yang Date: Wed Jun 6 18:38:54 2018 -0400 YARN-8403. Change the log level for fail to download resource from INFO to ERROR. Contributed by Eric Yang diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ResourceLocalizationService.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ResourceLocalizationService.java index ddae2ae..4138957 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ResourceLocalizationService.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ResourceLocalizationService.java @@ -972,11 +972,17 @@ public void run() { .getDU(new File(local.toUri())))); assoc.getResource().unlock(); } catch (ExecutionException e) { - LOG.info("Failed to download resource " + assoc.getResource(), - e.getCause()); - LocalResourceRequest req = assoc.getResource().getRequest(); - publicRsrc.handle(new ResourceFailedLocalizationEvent(req, - e.getMessage())); + String user = assoc.getContext().getUser(); + ApplicationId applicationId = assoc.getContext().getContainerId().getApplicationAttemptId().getApplicationId(); + LocalResourcesTracker tracker = + getLocalResourcesTracker(LocalResourceVisibility.APPLICATION, user, applicationId); + final String diagnostics = "Failed to download resource " + + assoc.getResource() + " " + e.getCause(); + tracker.handle(new ResourceFailedLocalizationEvent( + assoc.getResource().getRequest(), diagnostics)); + publicRsrc.handle(new ResourceFailedLocalizationEvent( + assoc.getResource().getRequest(), diagnostics)); + LOG.error(diagnostics); assoc.getResource().unlock(); } catch (CancellationException e) { // ignore; shutting down diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/TestResourceLocalizationService.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/TestResourceLocalizationService.java index 4d03f15..2b9148e 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/TestResourceLocalizationService.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/TestResourceLocalizationService.java @@ -2398,6 +2398,9 @@ public void testParallelDownloadAttemptsForPublicResource() throws Exception { // Waiting for resource to change into FAILED state. Assert.assertTrue(waitForResourceState(lr, spyService, req, LocalResourceVisibility.PUBLIC, user, null, ResourceState.FAILED, 5000)); + Assert.assertTrue(waitForResourceState(lr, spyService, req, + LocalResourceVisibility.APPLICATION, user, appId, ResourceState.FAILED, 5000)); + // releasing lock as a part of download failed process. lr.unlock(); // removing pending download request.