aboutsummaryrefslogtreecommitdiff
path: root/core/src/main/scala/org/apache/spark/storage/DiskBlockManager.scala
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/main/scala/org/apache/spark/storage/DiskBlockManager.scala')
-rw-r--r--core/src/main/scala/org/apache/spark/storage/DiskBlockManager.scala18
1 files changed, 5 insertions, 13 deletions
diff --git a/core/src/main/scala/org/apache/spark/storage/DiskBlockManager.scala b/core/src/main/scala/org/apache/spark/storage/DiskBlockManager.scala
index 2883137872..7ea5e54f9e 100644
--- a/core/src/main/scala/org/apache/spark/storage/DiskBlockManager.scala
+++ b/core/src/main/scala/org/apache/spark/storage/DiskBlockManager.scala
@@ -138,25 +138,17 @@ private[spark] class DiskBlockManager(blockManager: BlockManager, conf: SparkCon
}
}
- private def addShutdownHook(): Thread = {
- val shutdownHook = new Thread("delete Spark local dirs") {
- override def run(): Unit = Utils.logUncaughtExceptions {
- logDebug("Shutdown hook called")
- DiskBlockManager.this.doStop()
- }
+ private def addShutdownHook(): AnyRef = {
+ Utils.addShutdownHook { () =>
+ logDebug("Shutdown hook called")
+ DiskBlockManager.this.doStop()
}
- Runtime.getRuntime.addShutdownHook(shutdownHook)
- shutdownHook
}
/** Cleanup local dirs and stop shuffle sender. */
private[spark] def stop() {
// Remove the shutdown hook. It causes memory leaks if we leave it around.
- try {
- Runtime.getRuntime.removeShutdownHook(shutdownHook)
- } catch {
- case e: IllegalStateException => None
- }
+ Utils.removeShutdownHook(shutdownHook)
doStop()
}