Ver Fonte

commit 15dafe929a06545feb5d0fec7237701f157530a3
Author: Luke Lu <llu@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)
+


git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20-security-202@1077818 13f79535-47bb-0310-9956-ffa450edef68

Owen O'Malley há 14 anos atrás
pai
commit
aaf755fe6e
1 ficheiros alterados com 3 adições e 2 exclusões
  1. 3 2
      src/mapred/org/apache/hadoop/mapred/TaskTracker.java

+ 3 - 2
src/mapred/org/apache/hadoop/mapred/TaskTracker.java

@@ -2372,12 +2372,13 @@ public class TaskTracker implements MRConstants, TaskUmbilicalProtocol,
           ((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()))