[
https://issues.apache.org/jira/browse/HADOOP-9716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13707794#comment-13707794
]
Suresh Srinivas commented on HADOOP-9716:
-----------------------------------------
bq. BTW, since rpc retries use the same Call ID, we need to use Call ID and
Retry # as a key to identify rpc calls. We need to change the protocol to
support it.
Is it really required?
Currently a client retries in following cases:
# On some special exceptions (connection could not be established,
StandbyException). In this case the call Id outstanding request in the map will
be deleted since the client received response.
# When response could not be received. In this case on timeout we should also
remove the outstanding request in the map before retrying.
> Move the Rpc request call ID generation to client side InvocationHandler
> ------------------------------------------------------------------------
>
> Key: HADOOP-9716
> URL: https://issues.apache.org/jira/browse/HADOOP-9716
> Project: Hadoop Common
> Issue Type: Improvement
> Components: ipc
> Reporter: Suresh Srinivas
> Assignee: Tsz Wo (Nicholas), SZE
> Attachments: c9716_20130712b.patch, c9716_20130712.patch,
> c9716_20130713b.patch, c9716_20130713c.patch, c9716_20130713.patch
>
>
> Currently when RetryInvocationHandler is used to retry an RPC request, a new
> RPC request call ID is generated. This jira proposes moving call ID
> generation to InvocationHandler so that retried RPC requests retain the same
> call ID. This is needed for RetryCache functionality proposed in HDFS-4942.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira