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

Lokesh Jain commented on RATIS-630:
-----------------------------------

> For lagging behind, the follower may or may not be able to catch up. If it 
> can catch up, we probably should not fail/reject the client requests.

[~szetszwo] I agree. I was thinking of adding configurations to determine if a 
follower would be able to catch up with leader? The configurations could be 
something like a hard limit on number of pending commits or pending apply 
transactions.

> Is there any design doc you could share?

[~jingc] I am working on it. I will share it as soon as possible.

> Implement flow control in Ratis
> -------------------------------
>
>                 Key: RATIS-630
>                 URL: https://issues.apache.org/jira/browse/RATIS-630
>             Project: Ratis
>          Issue Type: Bug
>          Components: server
>            Reporter: Lokesh Jain
>            Priority: Major
>              Labels: ozone
>
> The aim of the Jira is to add flow control in Ratis in order to handle 
> slowness of LogWorker, LogAppender and StateMachine. The idea is to propagate 
> indexes like commit index(LogAppender) and lastAppliedIndex(StateMachine) 
> from followers to leader. The leader can use these indices to determine 
> slowness of a follower and handle client requests accordingly. For instance 
> if one of the follower is lagging behind then client requests demanding 
> commit by all nodes can be rejected by leader.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to