You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mnemonic.apache.org by yz...@apache.org on 2022/02/27 05:29:58 UTC

[mnemonic] branch master updated: MNEMONIC-724: Check the bufferBlock in JavaVMemServiceImpl.free

This is an automated email from the ASF dual-hosted git repository.

yzhao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mnemonic.git


The following commit(s) were added to refs/heads/master by this push:
     new 7f7110e  MNEMONIC-724: Check the bufferBlock in JavaVMemServiceImpl.free
7f7110e is described below

commit 7f7110e43529069b134540721d5d2d77fef0196d
Author: Li Shen <li...@apache.org>
AuthorDate: Thu Feb 24 21:29:55 2022 -0800

    MNEMONIC-724: Check the bufferBlock in JavaVMemServiceImpl.free
    
    Signed-off-by: Li Shen <li...@apache.org>
---
 .../apache/mnemonic/service/memory/internal/JavaVMemServiceImpl.java  | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mnemonic-memory-services/mnemonic-java-vmem-service/src/main/java/org/apache/mnemonic/service/memory/internal/JavaVMemServiceImpl.java b/mnemonic-memory-services/mnemonic-java-vmem-service/src/main/java/org/apache/mnemonic/service/memory/internal/JavaVMemServiceImpl.java
index f765be9..78d3e78 100644
--- a/mnemonic-memory-services/mnemonic-java-vmem-service/src/main/java/org/apache/mnemonic/service/memory/internal/JavaVMemServiceImpl.java
+++ b/mnemonic-memory-services/mnemonic-java-vmem-service/src/main/java/org/apache/mnemonic/service/memory/internal/JavaVMemServiceImpl.java
@@ -220,13 +220,13 @@ public class JavaVMemServiceImpl implements VolatileMemoryAllocatorService {
   @Override
   public void free(long id, long addr, ReclaimContext rctx) {
     MemoryInfo mi = this.getMemPools().get((int)id);
-    FileChannel channel = mi.getFileChannel();
+    // FileChannel channel = mi.getFileChannel();
     int startIdx, requiredblocks, size;
     long baseAddr;
     try {
       for (int blockIdx = 0; blockIdx < mi.getByteBufferBlocksList().size(); blockIdx++) {
         BufferBlockInfo bufferBlock = mi.getByteBufferBlocksList().get(blockIdx);
-        if (bufferBlock.getChunkSizeMap().containsKey(addr)) {
+        if (bufferBlock != null && bufferBlock.getChunkSizeMap().containsKey(addr)) {
           size = bufferBlock.getChunkSizeMap().get(addr);
           BitSet chunksMap = bufferBlock.getBufferBlockChunksMap();
           baseAddr = bufferBlock.getBufferBlockBaseAddress();