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/logaggregation/LogAggregationService.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/logaggregation/LogAggregationService.java index 2280e750f88..42ddfa7ba28 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/logaggregation/LogAggregationService.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/logaggregation/LogAggregationService.java @@ -288,6 +288,11 @@ protected void initAppAggregator(final ApplicationId appId, String user, // TODO Get the user configuration for the list of containers that need log // aggregation. + // avoid submitting aggregator when app dir creation fail + if (appDirException != null) { + throw appDirException; + } + // Schedule the aggregator. Runnable aggregatorWrapper = new Runnable() { public void run() { @@ -300,10 +305,6 @@ public void run() { } }; this.threadPool.execute(aggregatorWrapper); - - if (appDirException != null) { - throw appDirException; - } } protected void closeFileSystems(final UserGroupInformation userUgi) {