[ 
https://issues.apache.org/jira/browse/RATIS-1578?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17538722#comment-17538722
 ] 

mango commented on RATIS-1578:
------------------------------

[~szetszwo] Thanks for your reply.  But I found that after the leader election, 
sending requests always has this problem using that raft group.

This is the time of election success in the log:
{code:java}
2022-05-18 14:11:47,317 
[8df14bca-0194-4bd9-9001-7bd34845aaaa@group-A5E8DEB32177-LeaderElection2] INFO 
org.apache.hadoop.ozone.container.common.transport.server.ratis.XceiverServerRatis:
 Leader change not
ification received for group: group-A5E8DEB32177 with new leaderId: 
8df14bca-0194-4bd9-9001-7bd34845aaaa {code}
But after the election, it keeps reporting errors. I understand that this is 
because the leader ID on client has not been updated, It is still null.

The leader id is updated only when the client sends the request to the server 
successfully

      at  RaftClientImpl#handleIOException()

but now the request cannot be sent to the server because of the 
IllegalStateException.

 

> The following assertion error occurs when transferring large files
> ------------------------------------------------------------------
>
>                 Key: RATIS-1578
>                 URL: https://issues.apache.org/jira/browse/RATIS-1578
>             Project: Ratis
>          Issue Type: Sub-task
>            Reporter: GuoHao
>            Assignee: Tsz-wo Sze
>            Priority: Major
>
>  
> The following assertion error occurs when transferring large files.
>  
> Please look at length, the packet size I actually transmitted is 1MB, and the 
> size here is Length =1460. I suspect it is caused by sticky packet. Could you 
> help me solve this problem?
>  
> {code:java}
> 2022-05-09 22:03:14,050 
> [97c45065-e803-4377-9a2f-db1e53410b77-NettyServerStreamRpc-channelRead--thread9]
>  WARN org.apache.ratis.netty.server.DataStreamManagement: Failed to process 
> DataStreamRequestByteBuf:clientId=client-B557FB683D6A,type=STREAM_DATA,id=45,offset=667799,length=1460
> java.util.concurrent.ExecutionException: java.lang.IllegalStateException
>         at 
> java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)
>         at 
> java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1915)
>         at 
> org.apache.ratis.netty.server.DataStreamManagement.read(DataStreamManagement.java:419)
>         at 
> org.apache.ratis.netty.server.NettyServerStreamRpc$1.lambda$channelRead$0(NettyServerStreamRpc.java:230)
>         at 
> org.apache.ratis.thirdparty.io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98)
>         at 
> org.apache.ratis.thirdparty.io.netty.util.concurrent.PromiseTask.run(PromiseTask.java:106)
>         at 
> org.apache.ratis.thirdparty.io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
>         at 
> org.apache.ratis.thirdparty.io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
>         at 
> org.apache.ratis.thirdparty.io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:384)
>         at 
> org.apache.ratis.thirdparty.io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
>         at 
> org.apache.ratis.thirdparty.io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
>         at java.lang.Thread.run(Thread.java:748)
> Caused by: java.lang.IllegalStateException
>         at 
> org.apache.ratis.util.Preconditions.assertTrue(Preconditions.java:33)
>         at 
> org.apache.ratis.netty.server.DataStreamManagement.assertReplyCorrespondingToRequest(DataStreamManagement.java:499)
>         at 
> org.apache.ratis.netty.server.DataStreamManagement.checkSuccessRemoteWrite(DataStreamManagement.java:506)
>         at 
> org.apache.ratis.netty.server.DataStreamManagement.sendReply(DataStreamManagement.java:352)
>         at 
> org.apache.ratis.netty.server.DataStreamManagement.lambda$null$10(DataStreamManagement.java:470)
>         at 
> java.util.concurrent.CompletableFuture.biApply(CompletableFuture.java:1105)
>         at 
> java.util.concurrent.CompletableFuture$BiApply.tryFire(CompletableFuture.java:1070)
>         at 
> java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:442)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>         ... 1 more {code}



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to