aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/src/main/scala/org/apache/spark/HeartbeatReceiver.scala17
1 files changed, 11 insertions, 6 deletions
diff --git a/core/src/main/scala/org/apache/spark/HeartbeatReceiver.scala b/core/src/main/scala/org/apache/spark/HeartbeatReceiver.scala
index 715f292f03..548dcb93c3 100644
--- a/core/src/main/scala/org/apache/spark/HeartbeatReceiver.scala
+++ b/core/src/main/scala/org/apache/spark/HeartbeatReceiver.scala
@@ -49,12 +49,17 @@ private[spark] class HeartbeatReceiver(sc: SparkContext, scheduler: TaskSchedule
// executor ID -> timestamp of when the last heartbeat from this executor was received
private val executorLastSeen = new mutable.HashMap[String, Long]
-
- private val executorTimeoutMs = sc.conf.getLong("spark.network.timeout",
- sc.conf.getLong("spark.storage.blockManagerSlaveTimeoutMs", 120)) * 1000
-
- private val checkTimeoutIntervalMs = sc.conf.getLong("spark.network.timeoutInterval",
- sc.conf.getLong("spark.storage.blockManagerTimeoutIntervalMs", 60)) * 1000
+
+ // "spark.network.timeout" uses "seconds", while `spark.storage.blockManagerSlaveTimeoutMs` uses
+ // "milliseconds"
+ private val executorTimeoutMs = sc.conf.getOption("spark.network.timeout").map(_.toLong * 1000).
+ getOrElse(sc.conf.getLong("spark.storage.blockManagerSlaveTimeoutMs", 120000))
+
+ // "spark.network.timeoutInterval" uses "seconds", while
+ // "spark.storage.blockManagerTimeoutIntervalMs" uses "milliseconds"
+ private val checkTimeoutIntervalMs =
+ sc.conf.getOption("spark.network.timeoutInterval").map(_.toLong * 1000).
+ getOrElse(sc.conf.getLong("spark.storage.blockManagerTimeoutIntervalMs", 60000))
private var timeoutCheckingTask: Cancellable = null