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

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

commit 2c16ccb44c1c635edbd7db9fb2ed5f8347cdf7c7
Author: GewuNewOne <89496957+rkg...@users.noreply.github.com>
AuthorDate: Sun Apr 20 17:40:10 2025 +0800

    RATIS-2282. LogAppender Restart Due to Premature Log Entry Access During 
Concurrent Write Processing (#1249)
---
 .../main/java/org/apache/ratis/server/raftlog/segmented/LogSegment.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git 
a/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/LogSegment.java
 
b/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/LogSegment.java
index 1b0064e44..444d417ba 100644
--- 
a/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/LogSegment.java
+++ 
b/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/LogSegment.java
@@ -328,10 +328,10 @@ public final class LogSegment {
     }
 
     final LogRecord record = new LogRecord(totalFileSize, entry);
-    records.add(record);
     if (keepEntryInCache) {
       putEntryCache(record.getTermIndex(), entry, op);
     }
+    records.add(record);
     totalFileSize += getEntrySize(entry, op);
     endIndex = entry.getIndex();
   }

Reply via email to