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 7c2bb8d6fa27375f796d14768f0b697c56388726..56d48432a9cf3c3410a2ec0e00200972fa4088db 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
@@ -396,8 +396,13 @@ 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)
+      entries.get(blockId) match {
+        case Some(origEntry) =>
+          blockIdAndSizeSet -= new OurBlockIdAndSizeType(blockId, origEntry.size)
+        case None =>
+          // Do nothing
+          logInfo("origEntry was None after all")
+      }
       entries.remove(blockId)
     }
     if (entry != null) {