holdenk commented on a change in pull request #28817: URL: https://github.com/apache/spark/pull/28817#discussion_r440485608
########## File path: core/src/main/scala/org/apache/spark/executor/CoarseGrainedExecutorBackend.scala ########## @@ -258,26 +262,60 @@ private[spark] class CoarseGrainedExecutorBackend( System.exit(code) } - private def decommissionSelf(): Boolean = { - logInfo("Decommissioning self w/sync") - try { - decommissioned = true - // Tell master we are are decommissioned so it stops trying to schedule us - if (driver.nonEmpty) { - driver.get.askSync[Boolean](DecommissionExecutor(executorId)) + private def shutdownIfDone(): Unit = { + val numRunningTasks = executor.numRunningTasks + logInfo(s"Checking to see if we can shutdown have ${numRunningTasks} running tasks.") + if (executor.numRunningTasks == 0) { + if (env.conf.get(STORAGE_DECOMMISSION_ENABLED)) { + val allBlocksMigrated = env.blockManager.decommissionManager match { + case Some(m) => m.allBlocksMigrated + case None => false // We haven't started migrations yet. + } + if (allBlocksMigrated) { + logInfo("No running tasks, all blocks migrated, stopping.") + exitExecutor(0, "Finished decommissioning", notifyDriver = true) Review comment: Thanks :) If you want to make a PR for that I'd be happy to review/merge since I think that would not depend on any of the in-flight PRs just the current code in master. ---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org