[ 
https://issues.apache.org/jira/browse/RATIS-2427?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze resolved RATIS-2427.
-------------------------------
    Fix Version/s: 3.3.0
       Resolution: Fixed

The pull request is now merged.  Thanks, [~Symious]!

> Do not restart LogAppender on IllegalStateException
> ---------------------------------------------------
>
>                 Key: RATIS-2427
>                 URL: https://issues.apache.org/jira/browse/RATIS-2427
>             Project: Ratis
>          Issue Type: Bug
>          Components: Leader
>            Reporter: Janus Chow
>            Assignee: Janus Chow
>            Priority: Major
>             Fix For: 3.3.0
>
>          Time Spent: 1h 40m
>  Remaining Estimate: 0h
>
> We met the following exception.
> {code:java}
> 2026-03-08 13:51:10,388 
> [91193815-8c02-4e50-8cdc-792d6a5c1cdd@group-55811D60EE83->8e3e9d6b-d6d2-4ee4-b6ac-b310cf7117f1-GrpcLogAppender-LogAppenderDaemon]
>  WARN org.apache.ratis.server.leader.LogAppenderDaemon: 
> 91193815-8c02-4e50-8cdc-792d6a5c1cdd@group-55811D60EE83->8e3e9d6b-d6d2-4ee4-b6ac-b310cf7117f1-GrpcLogAppender-LogAppenderDaemon
>  failed
> java.lang.IllegalStateException: 
> 91193815-8c02-4e50-8cdc-792d6a5c1cdd@group-55811D60EE83-SegmentedRaftLog is 
> expected to be opened but it is CLOSED
>         at 
> org.apache.ratis.util.OpenCloseState.assertOpen(OpenCloseState.java:63)
>         at 
> org.apache.ratis.server.raftlog.RaftLogBase.checkLogState(RaftLogBase.java:112)
>         at 
> org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.getLastEntryTermIndex(SegmentedRaftLog.java:356)
>         at 
> org.apache.ratis.server.raftlog.RaftLog.getNextIndex(RaftLog.java:83)
>         at 
> org.apache.ratis.grpc.server.GrpcLogAppender.shouldNotifyToInstallSnapshot(GrpcLogAppender.java:826)
>         at 
> org.apache.ratis.grpc.server.GrpcLogAppender.installSnapshot(GrpcLogAppender.java:247)
>         at 
> org.apache.ratis.grpc.server.GrpcLogAppender.run(GrpcLogAppender.java:261)
>         at 
> org.apache.ratis.server.leader.LogAppenderDaemon.run(LogAppenderDaemon.java:80)
>         at java.lang.Thread.run(Thread.java:748)
> Caused by: org.apache.ratis.util.OpenCloseState$CloseTrace: Close 
> 91193815-8c02-4e50-8cdc-792d6a5c1cdd@group-55811D60EE83-SegmentedRaftLog
>         at 
> org.apache.ratis.util.OpenCloseState.lambda$close$1(OpenCloseState.java:109)
>         at 
> java.util.concurrent.atomic.AtomicReference.getAndUpdate(AtomicReference.java:160)
>         at org.apache.ratis.util.OpenCloseState.close(OpenCloseState.java:109)
>         at 
> org.apache.ratis.server.raftlog.RaftLogBase.close(RaftLogBase.java:386)
>         at 
> org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.close(SegmentedRaftLog.java:528)
>         at 
> org.apache.ratis.server.raftlog.RaftLogBase.lambda$appendImpl$3(RaftLogBase.java:203)
>         at 
> java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
>         at 
> java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
>         at 
> java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
>         at 
> java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1990)
>         at 
> org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog$Task.failed(SegmentedRaftLog.java:109)
>         at 
> org.apache.ratis.server.raftlog.segmented.SegmentedRaftLogWorker$WriteLog.failed(SegmentedRaftLogWorker.java:527)
>         at 
> org.apache.ratis.server.raftlog.segmented.SegmentedRaftLogWorker.run(SegmentedRaftLogWorker.java:324)
>         at 
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>         ... 1 more {code}
> And this ticket is to skip the restart for this case, all it will restart 
> forever.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to