You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by om...@apache.org on 2011/03/04 06:38:06 UTC
svn commit: r1077818 -
/hadoop/common/branches/branch-0.20-security-202/src/mapred/org/apache/hadoop/mapred/TaskTracker.java
Author: omalley
Date: Fri Mar 4 05:38:05 2011
New Revision: 1077818
URL: http://svn.apache.org/viewvc?rev=1077818&view=rev
Log:
commit 15dafe929a06545feb5d0fec7237701f157530a3
Author: Luke Lu <ll...@yahoo-inc.com>
Date: Fri Feb 11 12:28:44 2011 -0800
Fix a task state corrupting race
+++ b/YAHOO-CHANGES.txt
+Release 0.20.202.3 - unreleased
+
+ Fix a task state corrupting race. (llu)
+
Modified:
hadoop/common/branches/branch-0.20-security-202/src/mapred/org/apache/hadoop/mapred/TaskTracker.java
Modified: hadoop/common/branches/branch-0.20-security-202/src/mapred/org/apache/hadoop/mapred/TaskTracker.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.20-security-202/src/mapred/org/apache/hadoop/mapred/TaskTracker.java?rev=1077818&r1=1077817&r2=1077818&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.20-security-202/src/mapred/org/apache/hadoop/mapred/TaskTracker.java (original)
+++ hadoop/common/branches/branch-0.20-security-202/src/mapred/org/apache/hadoop/mapred/TaskTracker.java Fri Mar 4 05:38:05 2011
@@ -2372,12 +2372,13 @@ public class TaskTracker implements MRCo
((this.taskStatus.getRunState() == TaskStatus.State.COMMIT_PENDING ||
this.taskStatus.getRunState() == TaskStatus.State.FAILED_UNCLEAN ||
this.taskStatus.getRunState() == TaskStatus.State.KILLED_UNCLEAN) &&
- taskStatus.getRunState() == TaskStatus.State.RUNNING)) {
+ (taskStatus.getRunState() == TaskStatus.State.RUNNING ||
+ taskStatus.getRunState() == TaskStatus.State.UNASSIGNED))) {
//make sure we ignore progress messages after a task has
//invoked TaskUmbilicalProtocol.done() or if the task has been
//KILLED/FAILED/FAILED_UNCLEAN/KILLED_UNCLEAN
//Also ignore progress update if the state change is from
- //COMMIT_PENDING/FAILED_UNCLEAN/KILLED_UNCLEA to RUNNING
+ //COMMIT_PENDING/FAILED_UNCLEAN/KILLED_UNCLEA to RUNNING or UNASSIGNED
LOG.info(task.getTaskID() + " Ignoring status-update since " +
((this.done) ? "task is 'done'" :
("runState: " + this.taskStatus.getRunState()))