[
https://issues.apache.org/jira/browse/RATIS-453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16713813#comment-16713813
]
Tsz Wo Nicholas Sze commented on RATIS-453:
-------------------------------------------
r453_20181208.patch:
- If an async call failed with RaftRetryFailureException, fail all requests
after it.
- The patch also disables all future async calls in that client since all
future async calls are out of order.
User application may choose to close and create another client to continue.
However, it the application wants to retry, why not change the retry policy in
the first place?
> When retry failed on an async call, it should fails all the following calls
> in the sliding window
> -------------------------------------------------------------------------------------------------
>
> Key: RATIS-453
> URL: https://issues.apache.org/jira/browse/RATIS-453
> Project: Ratis
> Issue Type: Bug
> Components: client
> Reporter: Tsz Wo Nicholas Sze
> Assignee: Tsz Wo Nicholas Sze
> Priority: Major
> Attachments: r453_20181208.patch
>
>
> Suppose client has made more than one async calls and then waits for the
> replies. Suppose the leader is not ready or some other transient problem.
> The retries on the first async call may fail, the code will set
> RaftRetryFailureException in the reply. However, the retries of the
> following async calls may succeed. In such case, the call ordering is not
> guaranteed -- a later call succeeds without delivered an earlier call.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)