[
https://issues.apache.org/jira/browse/RATIS-601?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16868824#comment-16868824
]
Tsz Wo Nicholas Sze commented on RATIS-601:
-------------------------------------------
> b) RaftServerImpl#generateNotLeaderException should not guess current leader
> when it does not has information about it. ...
If the client does not change leader, it may stuck on a server forever when the
server is actually dead.
> Fix NotLeaderException handling
> -------------------------------
>
> Key: RATIS-601
> URL: https://issues.apache.org/jira/browse/RATIS-601
> Project: Ratis
> Issue Type: Bug
> Components: server
> Reporter: Mukul Kumar Singh
> Assignee: Mukul Kumar Singh
> Priority: Major
> Attachments: RATIS-601.001.patch
>
>
> There are 3 issues with leader election
> a) OrderedAsync#sendRequest doesn't handle NotLeaderException
> b) RaftServerImpl#generateNotLeaderException should not guess current leader
> when it does not has information about it. This leads to client retrying
> aggressively which leads into RetryException.
> c) RaftClient right now changes leader for AlreadyClosedException and
> TimeoutIOException, these events do not trigger leader election and hence the
> leader should not be changed.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)