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);