From 984d39451330ebd40fcb967e949186f4530511e9 Mon Sep 17 00:00:00 2001 From: guyinyou Date: Wed, 21 Jan 2026 15:46:32 +0800 Subject: [PATCH] Fix: avoid extra padding when message end position is already page-aligned Change-Id: I3e7fad9c4b194b20015414bcceb830760df68fea --- .../org/apache/rocketmq/store/logfile/DefaultMappedFile.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/store/src/main/java/org/apache/rocketmq/store/logfile/DefaultMappedFile.java b/store/src/main/java/org/apache/rocketmq/store/logfile/DefaultMappedFile.java index 7c4e5e025a7..7a7b5f84368 100644 --- a/store/src/main/java/org/apache/rocketmq/store/logfile/DefaultMappedFile.java +++ b/store/src/main/java/org/apache/rocketmq/store/logfile/DefaultMappedFile.java @@ -389,6 +389,9 @@ public AppendMessageResult appendMessagesInner(final MessageExt messageExt, fina int endpos = currentPos + msgLen; // alignment end position int extraAppendSize = UNSAFE_PAGE_SIZE - endpos % UNSAFE_PAGE_SIZE; + if (extraAppendSize == UNSAFE_PAGE_SIZE) { + extraAppendSize = 0; + } int actualAppendSize = msgLen + extraAppendSize; this.fileChannel.position(currentPos);