Class IsolatedLeader
java.lang.Object
org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior
org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader
org.opendaylight.controller.cluster.raft.behaviors.IsolatedLeader
- All Implemented Interfaces:
AutoCloseable
Leader which is termed as isolated.
If the reply from the majority of the followers is not received then the leader changes its behavior to IsolatedLeader. An isolated leader may have followers and they would continue to receive replicated messages.
A schedule is run, at an interval of (10 * Heartbeat-time-interval), in the Leader to check if its isolated or not.
In the Isolated Leader , on every AppendEntriesReply, we aggressively check if the leader is isolated. If no, then the state is switched back to Leader.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader
AbstractLeader.SendHeartBeat
-
Method Summary
Methods inherited from class org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader
addFollower, checkConsensusReached, close, followerLogSize, getFollower, getFollowerIds, getLeaderId, getLeaderPayloadVersion, getMinIsolatedLeaderPeerCount, handleMessage, initiateCaptureSnapshot, isLeaderIsolated, printFollowerStates, removeFollower, sendAppendEntries, sendInstallSnapshot, updateMinReplicaCount
Methods inherited from class org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior
getReplicatedToAllIndex, raftRole, setReplicatedToAllIndex