[ https://issues.apache.org/jira/browse/RATIS-973?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andy Wu updated RATIS-973: -------------------------- Description: I am building a server based on ratis. After a while, I cannot send message to that server. Then I check ratis server, connection seems got closed on the server side. Was wondering if anyone saw this exception before. [Server side log] {quote}[grpc-nio-worker-ELG-3-22] [NettyServerHandler] [line 216] [id: 0x7dbdc6d8, L:/ip1:9091 - R:/ip1:52484] INBOUND GO_AWAY: lastStreamId=0 errorCode=0 length=0 bytes= {quote} Also see some error message like: {quote}DEBUG 2020-06-11 01:27:44,697 [grpc-default-executor-2995] [GrpcClientProtocolService] [line 262] 1502-OrderedRequestStreamObserver1502: Failed onNext for client-8C15C5E709A7->s46#37936775-578308* in 1502-OrderedRequestStreamObserver1502 java.lang.IllegalStateException: Entry already exists for key 578308 in map SlidingWindow$Server:1502-OrderedRequestStreamObserver1502:requests at org.apache.ratis.util.Preconditions.assertTrue(Preconditions.java:75) ~[ratis-common-0.5.0.jar:0.5.0] at org.apache.ratis.util.CollectionUtils.putNew(CollectionUtils.java:94) ~[ratis-common-0.5.0.jar:0.5.0] at org.apache.ratis.util.SlidingWindow$RequestMap.putNewRequest(SlidingWindow.java:126) ~[ratis-common-0.5.0.jar:0.5.0] at org.apache.ratis.util.SlidingWindow$Server.receivedRequest(SlidingWindow.java:420) ~[ratis-common-0.5.0.jar:0.5.0] at org.apache.ratis.grpc.client.GrpcClientProtocolService$OrderedRequestStreamObserver.processClientRequest(GrpcClientProtocolService.java:355) ~[ratis-grpc-0.5.0.jar:0.5.0] at org.apache.ratis.grpc.client.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:245) [ratis-grpc-0.5.0.jar:0.5.0] at org.apache.ratis.grpc.client.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:168) [ratis-grpc-0.5.0.jar:0.5.0] at org.apache.ratis.thirdparty.io.grpc.stub.ServerCalls$StreamingServerCallHandler$StreamingServerCallListener.onMessage(ServerCalls.java:251) [ratis-thirdparty-misc-0.3.0.jar:0.3.0] at org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailableInternal(ServerCallImpl.java:309) [ratis-thirdparty-misc-0.3.0.jar:0.3.0] at org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailable(ServerCallImpl.java:292) [ratis-thirdparty-misc-0.3.0.jar:0.3.0] at org.apache.ratis.thirdparty.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1MessagesAvailable.runInContext(ServerImpl.java:779) [ratis-thirdparty-misc-0.3.0.jar:0.3.0] at org.apache.ratis.thirdparty.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) [ratis-thirdparty-misc-0.3.0.jar:0.3.0] at org.apache.ratis.thirdparty.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123) [ratis-thirdparty-misc-0.3.0.jar:0.3.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_232] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_232]{quote} was: I am building a server based on ratis. After a while, I cannot send message to that server. Then I check ratis server, connection seems got closed on the server side. Was wondering if anyone saw this exception before. [Server side log] [grpc-nio-worker-ELG-3-22] [NettyServerHandler] [line 216] [id: 0x7dbdc6d8, L:/ip1:9091 - R:/ip1:52484] INBOUND GO_AWAY: lastStreamId=0 errorCode=0 length=0 bytes= > [grpc-nio-worker-ELG-3-22] [NettyServerHandler] [line 216] [id: 0x7dbdc6d8, > L:/ip1:9091 - R:/ip1:52484] INBOUND GO_AWAY: lastStreamId=0 errorCode=0 > length=0 bytes= > ------------------------------------------------------------------------------------------------------------------------------------------------------------------- > > Key: RATIS-973 > URL: https://issues.apache.org/jira/browse/RATIS-973 > Project: Ratis > Issue Type: Bug > Affects Versions: 0.6.0 > Reporter: Andy Wu > Priority: Major > > I am building a server based on ratis. After a while, I cannot send message > to that server. Then I check ratis server, connection seems got closed on the > server side. Was wondering if anyone saw this exception before. > [Server side log] > {quote}[grpc-nio-worker-ELG-3-22] [NettyServerHandler] [line 216] [id: > 0x7dbdc6d8, L:/ip1:9091 - R:/ip1:52484] INBOUND GO_AWAY: lastStreamId=0 > errorCode=0 length=0 bytes= > {quote} > Also see some error message like: > {quote}DEBUG 2020-06-11 01:27:44,697 [grpc-default-executor-2995] > [GrpcClientProtocolService] [line 262] 1502-OrderedRequestStreamObserver1502: > Failed onNext for client-8C15C5E709A7->s46#37936775-578308* in > 1502-OrderedRequestStreamObserver1502 > java.lang.IllegalStateException: Entry already exists for key 578308 in map > SlidingWindow$Server:1502-OrderedRequestStreamObserver1502:requests > at > org.apache.ratis.util.Preconditions.assertTrue(Preconditions.java:75) > ~[ratis-common-0.5.0.jar:0.5.0] > at > org.apache.ratis.util.CollectionUtils.putNew(CollectionUtils.java:94) > ~[ratis-common-0.5.0.jar:0.5.0] > at > org.apache.ratis.util.SlidingWindow$RequestMap.putNewRequest(SlidingWindow.java:126) > ~[ratis-common-0.5.0.jar:0.5.0] > at > org.apache.ratis.util.SlidingWindow$Server.receivedRequest(SlidingWindow.java:420) > ~[ratis-common-0.5.0.jar:0.5.0] > at > org.apache.ratis.grpc.client.GrpcClientProtocolService$OrderedRequestStreamObserver.processClientRequest(GrpcClientProtocolService.java:355) > ~[ratis-grpc-0.5.0.jar:0.5.0] > at > org.apache.ratis.grpc.client.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:245) > [ratis-grpc-0.5.0.jar:0.5.0] > at > org.apache.ratis.grpc.client.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:168) > [ratis-grpc-0.5.0.jar:0.5.0] > at > org.apache.ratis.thirdparty.io.grpc.stub.ServerCalls$StreamingServerCallHandler$StreamingServerCallListener.onMessage(ServerCalls.java:251) > [ratis-thirdparty-misc-0.3.0.jar:0.3.0] > at > org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailableInternal(ServerCallImpl.java:309) > [ratis-thirdparty-misc-0.3.0.jar:0.3.0] > at > org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailable(ServerCallImpl.java:292) > [ratis-thirdparty-misc-0.3.0.jar:0.3.0] > at > org.apache.ratis.thirdparty.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1MessagesAvailable.runInContext(ServerImpl.java:779) > [ratis-thirdparty-misc-0.3.0.jar:0.3.0] > at > org.apache.ratis.thirdparty.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) > [ratis-thirdparty-misc-0.3.0.jar:0.3.0] > at > org.apache.ratis.thirdparty.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123) > [ratis-thirdparty-misc-0.3.0.jar:0.3.0] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > [na:1.8.0_232] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > [na:1.8.0_232]{quote} -- This message was sent by Atlassian Jira (v8.3.4#803005)