You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-commits@hadoop.apache.org by bo...@apache.org on 2012/11/19 17:45:16 UTC
svn commit: r1411295 - in
/hadoop/common/branches/branch-2/hadoop-yarn-project: ./
hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/logaggregation/
Author: bobby
Date: Mon Nov 19 16:45:14 2012
New Revision: 1411295
URL: http://svn.apache.org/viewvc?rev=1411295&view=rev
Log:
svn merge -c 1411289 FIXES: YARN-219. NM should aggregate logs when application finishes. (bobby)
Modified:
hadoop/common/branches/branch-2/hadoop-yarn-project/CHANGES.txt
hadoop/common/branches/branch-2/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/logaggregation/AppLogAggregatorImpl.java
Modified: hadoop/common/branches/branch-2/hadoop-yarn-project/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-yarn-project/CHANGES.txt?rev=1411295&r1=1411294&r2=1411295&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-yarn-project/CHANGES.txt (original)
+++ hadoop/common/branches/branch-2/hadoop-yarn-project/CHANGES.txt Mon Nov 19 16:45:14 2012
@@ -230,6 +230,8 @@ Release 0.23.5 - UNRELEASED
YARN-212. NM state machine ignores an APPLICATION_CONTAINER_FINISHED event
when it shouldn't (Nathan Roberts via jlowe)
+ YARN-219. NM should aggregate logs when application finishes. (bobby)
+
Release 0.23.4
INCOMPATIBLE CHANGES
Modified: hadoop/common/branches/branch-2/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/logaggregation/AppLogAggregatorImpl.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/logaggregation/AppLogAggregatorImpl.java?rev=1411295&r1=1411294&r2=1411295&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/logaggregation/AppLogAggregatorImpl.java (original)
+++ hadoop/common/branches/branch-2/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/logaggregation/AppLogAggregatorImpl.java Mon Nov 19 16:45:14 2012
@@ -149,16 +149,13 @@ public class AppLogAggregatorImpl implem
ContainerId containerId;
while (!this.appFinishing.get()) {
- try {
- containerId = this.pendingContainers.poll();
- if (containerId == null) {
- Thread.sleep(THREAD_SLEEP_TIME);
- } else {
- uploadLogsForContainer(containerId);
+ synchronized(this) {
+ try {
+ wait(THREAD_SLEEP_TIME);
+ } catch (InterruptedException e) {
+ LOG.warn("PendingContainers queue is interrupted");
+ this.appFinishing.set(true);
}
- } catch (InterruptedException e) {
- LOG.warn("PendingContainers queue is interrupted");
- this.appFinishing.set(true);
}
}
@@ -251,8 +248,9 @@ public class AppLogAggregatorImpl implem
}
@Override
- public void finishLogAggregation() {
+ public synchronized void finishLogAggregation() {
LOG.info("Application just finished : " + this.applicationId);
this.appFinishing.set(true);
+ this.notifyAll();
}
}