[
https://issues.apache.org/jira/browse/RATIS-601?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16868596#comment-16868596
]
Mukul Kumar Singh commented on RATIS-601:
-----------------------------------------
The attached patch provides the following improvement, The ratio of SUCCESS to
FAILURE in client due to NotLeaderException improves.
{code}
HW15866:integration-test msingh$ less
/tmp/2019-06-20--20-01-21-IST.MiniOzoneChaosCluster.log
HW15866:integration-test msingh$ egrep FAILED
/tmp/2019-06-20--20-01-21-IST.MiniOzoneChaosCluster.log | grep -v ContainerNot
| wc -l
53
{code}
{code}
HW15866:integration-test msingh$ egrep SUCCESS
/tmp/2019-06-20--20-01-21-IST.MiniOzoneChaosCluster.log | wc -l
38710
{code}
> 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
>
> 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)