diff --git a/core/server/worker/src/main/java/alluxio/worker/block/MonoBlockStore.java b/core/server/worker/src/main/java/alluxio/worker/block/MonoBlockStore.java index 5f18e4cac897..1e6e2c32b799 100644 --- a/core/server/worker/src/main/java/alluxio/worker/block/MonoBlockStore.java +++ b/core/server/worker/src/main/java/alluxio/worker/block/MonoBlockStore.java @@ -347,12 +347,12 @@ public CompletableFuture> load(List blocks, UfsReadOpti blockWriter.close(); } catch (IOException e) { throw AlluxioRuntimeException.from(e); - } finally { - NioDirectBufferPool.release(buf); } }) .thenRun(() -> commitBlock(sessionId, blockId, false)) + .thenRun(() -> NioDirectBufferPool.release(buf)) .exceptionally(t -> { + NioDirectBufferPool.release(buf); handleException(t.getCause(), block, errors, sessionId); return null; });