From 82a06afd76bcb61319895e642c5a5f83a3ff3c61 Mon Sep 17 00:00:00 2001 From: zouchenjun Date: Thu, 9 Apr 2020 19:01:46 +0800 Subject: [PATCH] reverse preferred location to make schedule more even --- .../main/scala/org/apache/spark/scheduler/TaskSetManager.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/scala/org/apache/spark/scheduler/TaskSetManager.scala b/core/src/main/scala/org/apache/spark/scheduler/TaskSetManager.scala index 2c792338b5295..cddea43150b0a 100644 --- a/core/src/main/scala/org/apache/spark/scheduler/TaskSetManager.scala +++ b/core/src/main/scala/org/apache/spark/scheduler/TaskSetManager.scala @@ -240,7 +240,7 @@ private[spark] class TaskSetManager( // A zombie TaskSetManager may reach here while handling failed task. if (isZombie) return val pendingTaskSetToAddTo = if (speculatable) pendingSpeculatableTasks else pendingTasks - for (loc <- tasks(index).preferredLocations) { + for (loc <- tasks(index).preferredLocations.reverse) { loc match { case e: ExecutorCacheTaskLocation => pendingTaskSetToAddTo.forExecutor.getOrElseUpdate(e.executorId, new ArrayBuffer) += index