Github user andrewor14 commented on a diff in the pull request:
https://github.com/apache/spark/pull/11205#discussion_r53498726
--- Diff:
core/src/main/scala/org/apache/spark/ExecutorAllocationManager.scala ---
@@ -540,9 +540,11 @@ private[spark] class ExecutorAllocationManager(
private val stageIdToNumTasks = new mutable.HashMap[Int, Int]
private val stageIdToTaskIndices = new mutable.HashMap[Int,
mutable.HashSet[Int]]
- private val executorIdToTaskIds = new mutable.HashMap[String,
mutable.HashSet[Long]]
- // Number of tasks currently running on the cluster. Should be 0 when
no stages are active.
- private var numRunningTasks: Int = _
+ private val executorIdToStageAndNumTasks =
+ new mutable.HashMap[String, mutable.HashMap[Int, Int]]
--- End diff --
this is a very complicated data structure. Why do we need to keep track of
what stage each executor is running? Is there a simpler way to fix this?
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]