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

Glen Geng updated RATIS-1014:
-----------------------------
    Description: 
After merge 

 

  was:
We should make sure that the stale leader steps down to the candidate state 
before the next leader election.

Proposal:
In the heartbeat thread in the Leader node, we should check if the last 
response time of the follower is less than the leader election timeout. If the 
majority of the follower’s last response time is less than the leader election 
timeout, the current leader is still the active leader. Majority of the 
followers are heartbeating to the current leader, so there can’t be a new 
leader.

If the majority of follower’s last response time is greater than the leader 
election timeout, the current leader should step down and become a candidate.

With this check, we can be sure that the current leader will step down and 
become a candidate before the new leader election starts in case of a network 
partition.



> checkLeadership() may make some test case become flaky under GitHub CI.
> -----------------------------------------------------------------------
>
>                 Key: RATIS-1014
>                 URL: https://issues.apache.org/jira/browse/RATIS-1014
>             Project: Ratis
>          Issue Type: Test
>            Reporter: Glen Geng
>            Assignee: Glen Geng
>            Priority: Major
>
> After merge 
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to