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 c473ab3c8e94c6e6565d5fa4c6d2bb3439f91d0c..d5cc1d58e79960636466e0fa2b5a678c0c105c53 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 @@ -159,6 +159,30 @@ private[spark] class MemoryStore( entries.synchronized { entries.put(blockId, entry) } + // SS + val blockExInfos = blockManager.blockInfoManager.blockExInfos + val inMemExInfos = blockManager.blockInfoManager.inMemExInfos + if (blockId.isRDD) { + val curValue = blockExInfos.get(blockId) + curValue.size = size + curValue.writeFinAndCalCreatCost(System.currentTimeMillis()) + // add to SortMap + inMemExInfos.synchronized { + logInfo("Phoenix: Add " + curValue.blockId + " to inMemBlockExInfo") + inMemExInfos.add(curValue) + } + logInfo("Create Block " + blockId + "and store in memory cost " + curValue.creatCost + + " and normCost is " + curValue.norCost) + // update son's start time in par's watching list + var sonSet = blockExInfos.get(blockId).sonSet + // sonSet.synchronized + for (sonId <- sonSet) { + blockExInfos.get(sonId).creatStartTime = System.currentTimeMillis() + logInfo("Phoenix: update start time of sonId " + sonId) + } + sonSet = Set() + } + // SS logInfo("Block %s stored as bytes in memory (estimated size %s, free %s)".format( blockId, Utils.bytesToString(size), Utils.bytesToString(maxMemory - blocksMemoryUsed))) true