From 491fd1de431c6b5bc63935300431688e90d43d05 Mon Sep 17 00:00:00 2001
From: Justin Loew <jloloew@gmail.com>
Date: Thu, 3 May 2018 22:32:24 -0500
Subject: [PATCH] Handle Option.None correctly when removing an RDD (take 2)

---
 .../scala/org/apache/spark/storage/memory/MemoryStore.scala   | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/core/src/main/scala/org/apache/spark/storage/memory/MemoryStore.scala b/core/src/main/scala/org/apache/spark/storage/memory/MemoryStore.scala
index 7c2bb8d6fa..f991380ece 100644
--- a/core/src/main/scala/org/apache/spark/storage/memory/MemoryStore.scala
+++ b/core/src/main/scala/org/apache/spark/storage/memory/MemoryStore.scala
@@ -397,7 +397,9 @@ private[spark] class MemoryStore(
   def remove(blockId: BlockId): Boolean = memoryManager.synchronized {
     val entry = entries.synchronized {
       val origEntry = entries.get(blockId)
-      blockIdAndSizeSet -= new OurBlockIdAndSizeType(blockId, origEntry.size)
+      if (origEntry != null) {
+        blockIdAndSizeSet -= new OurBlockIdAndSizeType(blockId, origEntry.size)
+      }
       entries.remove(blockId)
     }
     if (entry != null) {
-- 
GitLab