diff --git a/core/common/src/main/java/alluxio/Sessions.java b/core/common/src/main/java/alluxio/Sessions.java index 489d5f1ee799..eaf5f48c555f 100644 --- a/core/common/src/main/java/alluxio/Sessions.java +++ b/core/common/src/main/java/alluxio/Sessions.java @@ -36,9 +36,10 @@ public class Sessions { public static final int CACHE_UFS_SESSION_ID = -8; public static final int LOAD_SESSION_ID = -9; + public static final int WORKER_CHECKSUM_CHECK_SESSION_ID = -10; // internal session id base should be smaller than all predefined session ids - public static final long INTERNAL_SESSION_ID_BASE = -8; + public static final long INTERNAL_SESSION_ID_BASE = -11; /** Map from SessionId to {@link alluxio.SessionInfo} object. */ private final Map mSessions; diff --git a/core/server/worker/src/main/java/alluxio/worker/block/DefaultBlockWorker.java b/core/server/worker/src/main/java/alluxio/worker/block/DefaultBlockWorker.java index c6b34475f62b..030560cc6c6a 100644 --- a/core/server/worker/src/main/java/alluxio/worker/block/DefaultBlockWorker.java +++ b/core/server/worker/src/main/java/alluxio/worker/block/DefaultBlockWorker.java @@ -637,10 +637,10 @@ public Map calculateBlockChecksum(List blockIds) { for (long blockId : blockIds) { Future future = mChecksumCalculationThreadPool.submit(() -> { ByteBuffer bf = null; - try { + try (BlockReader br = mBlockStore.createBlockReader( + Sessions.WORKER_CHECKSUM_CHECK_SESSION_ID, + blockId, 0, false, Protocol.OpenUfsBlockOptions.getDefaultInstance())) { CRC64 crc64 = new CRC64(); - BlockReader br = mBlockStore.createBlockReader( - -1, blockId, 0, false, Protocol.OpenUfsBlockOptions.getDefaultInstance()); if (mChecksumCalculationUsingBufferPool) { bf = NioHeapBufferPool.acquire(chunkSize); } else {