[ 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