mridulm commented on code in PR #39280:
URL: https://github.com/apache/spark/pull/39280#discussion_r1064086141
##########
core/src/main/scala/org/apache/spark/scheduler/cluster/CoarseGrainedSchedulerBackend.scala:
##########
@@ -534,11 +549,14 @@ class CoarseGrainedSchedulerBackend(scheduler:
TaskSchedulerImpl, val rpcEnv: Rp
// Do not change this code without running the K8s integration suites
val executorsToDecommission = executorsAndDecomInfo.flatMap { case
(executorId, decomInfo) =>
// Only bother decommissioning executors which are alive.
+ // Keep executor decommission info in case executor started, but not
registered yet
if (isExecutorActive(executorId)) {
scheduler.executorDecommission(executorId, decomInfo)
executorsPendingDecommission(executorId) = decomInfo
Some(executorId)
} else {
+ unKnownExecutorsPendingDecommission.put(executorId,
Review Comment:
Is the concern that the entry in the map will be around for a registration
request to come in, that never happens ?
If yes, this can also happen when the executor startup fails - for example.
This should be fine, given the cache is bounded, right ?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]