Explorar o código

commit d4dfb8511e24ef731d76d393340ef7aa07b6f982
Author: Arun C Murthy <acmurthy@apache.org>
Date: Fri Jul 23 01:09:21 2010 -0700

MAPREDUCE-339. Fixed the JobInProgress comparator to ensure TIPs aren't lost.


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

Owen O'Malley %!s(int64=14) %!d(string=hai) anos
pai
achega
6c7fc4c79c
Modificáronse 1 ficheiros con 7 adicións e 2 borrados
  1. 7 2
      src/mapred/org/apache/hadoop/mapred/JobInProgress.java

+ 7 - 2
src/mapred/org/apache/hadoop/mapred/JobInProgress.java

@@ -171,7 +171,12 @@ public class JobInProgress {
     new Comparator<TaskInProgress>() {
       @Override
       public int compare(TaskInProgress t1, TaskInProgress t2) {
-        return t2.numTaskFailures() - t1.numTaskFailures();
+        if (t1 == null) return -1;
+        if (t2 == null) return 1;
+        
+        int failures = t2.numTaskFailures() - t1.numTaskFailures();
+        return (failures == 0) ? (t1.getTIPId().getId() - t2.getTIPId().getId())
+            : failures;
       }
     };
 
@@ -1389,7 +1394,7 @@ public class JobInProgress {
   
   /**
    * Check if we can schedule an off-switch task for this job.
-   * @param numTaskTrackers TaskTrackers in the cluster.
+   * 
    * @param numTaskTrackers number of tasktrackers
    * @return <code>true</code> if we can schedule off-switch, 
    *         <code>false</code> otherwise