Uploaded image for project: 'Ratis'
  1. Ratis
  2. RATIS-719

SegmentedRaftLog#close fails with IllegalStateException

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Duplicate
    • None
    • None
    • server
    • None

    Description

       

      Exception in thread "org.apache.ratis.server.impl.LogAppender$AppenderDaemon$$Lambda$343/1887343319@5d317807" java.lang.IllegalArgumentException: 7cd8590b-b724-4d53-8888-a565ab6706c7@group-E476037E5613-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.RaftLog.checkLogState(RaftLog.java:102)
      	at org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.getLastEntryTermIndex(SegmentedRaftLog.java:345)
      	at org.apache.ratis.server.raftlog.RaftLog.getNextIndex(RaftLog.java:148)
      	at org.apache.ratis.server.impl.LeaderState.addAndStartSenders(LeaderState.java:384)
      	at org.apache.ratis.server.impl.LeaderState.restartSender(LeaderState.java:410)
      	at org.apache.ratis.server.impl.LogAppender$AppenderDaemon.run(LogAppender.java:93)
      	at java.lang.Thread.run(Thread.java:748)
      Caused by: org.apache.ratis.util.OpenCloseState$CloseTrace: Close 7cd8590b-b724-4d53-8888-a565ab6706c7@group-E476037E5613-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.RaftLog.close(RaftLog.java:437)
      	at org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.close(SegmentedRaftLog.java:500)
      	at org.apache.ratis.server.impl.ServerState.close(ServerState.java:389)
      	at org.apache.ratis.server.impl.RaftServerImpl.lambda$shutdown$3(RaftServerImpl.java:275)
      	at org.apache.ratis.util.LifeCycle.lambda$checkStateAndClose$2(LifeCycle.java:231)
      	at org.apache.ratis.util.LifeCycle.checkStateAndClose(LifeCycle.java:251)
      	at org.apache.ratis.util.LifeCycle.checkStateAndClose(LifeCycle.java:229)
      	at org.apache.ratis.server.impl.RaftServerImpl.shutdown(RaftServerImpl.java:252)
      	at org.apache.ratis.server.impl.RaftServerProxy.lambda$groupRemoveAsync$12(RaftServerProxy.java:406)
      	at java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:602)
      	at java.util.concurrent.CompletableFuture.uniApplyStage(CompletableFuture.java:614)
      	at java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:1983)
      	at org.apache.ratis.server.impl.RaftServerProxy.groupRemoveAsync(RaftServerProxy.java:404)
      	at org.apache.ratis.server.impl.RaftServerProxy.groupManagementAsync(RaftServerProxy.java:367)
      	at org.apache.ratis.grpc.server.GrpcAdminProtocolService.lambda$groupManagement$0(GrpcAdminProtocolService.java:42)
      	at org.apache.ratis.grpc.GrpcUtil.asyncCall(GrpcUtil.java:140)
      	at org.apache.ratis.grpc.server.GrpcAdminProtocolService.groupManagement(GrpcAdminProtocolService.java:42)
      	at org.apache.ratis.proto.grpc.AdminProtocolServiceGrpc$MethodHandlers.invoke(AdminProtocolServiceGrpc.java:361)
      	at org.apache.ratis.thirdparty.io.grpc.stub.ServerCalls$UnaryServerCallHandler$UnaryServerCallListener.onHalfClose(ServerCalls.java:171)
      	at org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.halfClosed(ServerCallImpl.java:283)
      	at org.apache.ratis.thirdparty.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1HalfClosed.runInContext(ServerImpl.java:710)
      	at org.apache.ratis.thirdparty.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
      	at org.apache.ratis.thirdparty.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      	... 1 more
      
      

       

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              ljain Lokesh Jain
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: