Author: ddas
Date: Mon Jan 19 10:08:59 2009
New Revision: 735765
URL: http://svn.apache.org/viewvc?rev=735765&view=rev
Log:
Merge -r 735763:735764 from trunk onto 0.20 branch. Fixes HADOOP-4967.
Modified:
hadoop/core/branches/branch-0.20/CHANGES.txt
hadoop/core/branches/branch-0.20/src/mapred/org/apache/hadoop/mapred/JvmManager.java
hadoop/core/branches/branch-0.20/src/mapred/org/apache/hadoop/mapred/TaskTracker.java
Modified: hadoop/core/branches/branch-0.20/CHANGES.txt
URL:
http://svn.apache.org/viewvc/hadoop/core/branches/branch-0.20/CHANGES.txt?rev=735765&r1=735764&r2=735765&view=diff
==============================================================================
--- hadoop/core/branches/branch-0.20/CHANGES.txt (original)
+++ hadoop/core/branches/branch-0.20/CHANGES.txt Mon Jan 19 10:08:59 2009
@@ -609,6 +609,9 @@
HADOOP-4965. TestFileAppend3 should close FileSystem. (shv)
+ HADOOP-4967. Fixes a race condition in the JvmManager to do with killing
+ tasks. (ddas)
+
Release 0.19.0 - 2008-11-18
INCOMPATIBLE CHANGES
Modified:
hadoop/core/branches/branch-0.20/src/mapred/org/apache/hadoop/mapred/JvmManager.java
URL:
http://svn.apache.org/viewvc/hadoop/core/branches/branch-0.20/src/mapred/org/apache/hadoop/mapred/JvmManager.java?rev=735765&r1=735764&r2=735765&view=diff
==============================================================================
---
hadoop/core/branches/branch-0.20/src/mapred/org/apache/hadoop/mapred/JvmManager.java
(original)
+++
hadoop/core/branches/branch-0.20/src/mapred/org/apache/hadoop/mapred/JvmManager.java
Mon Jan 19 10:08:59 2009
@@ -195,6 +195,11 @@
}
private synchronized void reapJvm(
TaskRunner t, TaskTracker tracker, JvmEnv env) {
+ if (t.getTaskInProgress().wasKilled()) {
+ //the task was killed in-flight
+ //no need to do the rest of the operations
+ return;
+ }
boolean spawnNewJvm = false;
JobID jobId = t.getTask().getJobID();
//Check whether there is a free slot to start a new JVM.
Modified:
hadoop/core/branches/branch-0.20/src/mapred/org/apache/hadoop/mapred/TaskTracker.java
URL:
http://svn.apache.org/viewvc/hadoop/core/branches/branch-0.20/src/mapred/org/apache/hadoop/mapred/TaskTracker.java?rev=735765&r1=735764&r2=735765&view=diff
==============================================================================
---
hadoop/core/branches/branch-0.20/src/mapred/org/apache/hadoop/mapred/TaskTracker.java
(original)
+++
hadoop/core/branches/branch-0.20/src/mapred/org/apache/hadoop/mapred/TaskTracker.java
Mon Jan 19 10:08:59 2009
@@ -1779,7 +1779,7 @@
StringBuffer diagnosticInfo = new StringBuffer();
private TaskRunner runner;
volatile boolean done = false;
- boolean wasKilled = false;
+ volatile boolean wasKilled = false;
private JobConf defaultJobConf;
private JobConf localJobConf;
private boolean keepFailedTaskFiles;
@@ -2026,6 +2026,10 @@
LOG.info("reported output size for " + task.getTaskID() + " was " +
taskStatus.getOutputSize());
}
+
+ public boolean wasKilled() {
+ return wasKilled;
+ }
/**
* The task has actually finished running.