aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Haberman <stephen@exigencecorp.com>2013-01-22 16:29:05 -0600
committerStephen Haberman <stephen@exigencecorp.com>2013-01-22 16:29:05 -0600
commit250fe89679bb59ef0d31f74985f72556dcfe2d06 (patch)
tree3765c97b7d41b73a60918d492f3b720ef02ca1a0
parent6f2194f7576eb188c23f18125f5101ae0b4e9e4d (diff)
downloadspark-250fe89679bb59ef0d31f74985f72556dcfe2d06.tar.gz
spark-250fe89679bb59ef0d31f74985f72556dcfe2d06.tar.bz2
spark-250fe89679bb59ef0d31f74985f72556dcfe2d06.zip
Handle Master telling the Worker to kill an already-dead executor.
-rw-r--r--core/src/main/scala/spark/deploy/worker/Worker.scala10
1 files changed, 7 insertions, 3 deletions
diff --git a/core/src/main/scala/spark/deploy/worker/Worker.scala b/core/src/main/scala/spark/deploy/worker/Worker.scala
index 19bf2be118..d040b86908 100644
--- a/core/src/main/scala/spark/deploy/worker/Worker.scala
+++ b/core/src/main/scala/spark/deploy/worker/Worker.scala
@@ -143,9 +143,13 @@ private[spark] class Worker(
case KillExecutor(jobId, execId) =>
val fullId = jobId + "/" + execId
- val executor = executors(fullId)
- logInfo("Asked to kill executor " + fullId)
- executor.kill()
+ executors.get(fullId) match {
+ case Some(executor) =>
+ logInfo("Asked to kill executor " + fullId)
+ executor.kill()
+ case None =>
+ logInfo("Asked to kill non-existent existent " + fullId)
+ }
case Terminated(_) | RemoteClientDisconnected(_, _) | RemoteClientShutdown(_, _) =>
masterDisconnected()