[
https://issues.apache.org/jira/browse/HBASE-16285?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15403527#comment-15403527
]
Phil Yang commented on HBASE-16285:
-----------------------------------
The second call method
{quote}
Pair<Message, CellScanner> call(BlockingService service, MethodDescriptor md,
Message param, CellScanner cellScanner, long receiveTime,
MonitoredRPCHandler status,
int timeout) throws IOException, ServiceException;
{quote}
is introduced by HBASE-15593 in branch-1.3+. And after adding new method, this
one is not used any more, since 1.3.0 is not released, maybe we can remove it
and deprecate the first call?
> Drop RPC requests if it must be considered as timeout at client
> ---------------------------------------------------------------
>
> Key: HBASE-16285
> URL: https://issues.apache.org/jira/browse/HBASE-16285
> Project: HBase
> Issue Type: Improvement
> Reporter: Phil Yang
> Assignee: Phil Yang
> Attachments: HBASE-16285-branch-1-v1.patch,
> HBASE-16285-branch-1-v2.patch, HBASE-16285-v1.patch, HBASE-16285-v2.patch,
> HBASE-16285-v3.patch, HBASE-16285-v4.patch
>
>
> After HBASE-15593, we have a timeout param in header of RPC requests. We can
> use it in more scenes.
> A straightforward scene is to drop requests if it has waited so long in RPC
> queue and has been dropped by client. Even if we handle this request and send
> the response back, it will not be used any more. And client may have sent a
> retry. In an extreme case, if the server is slow, all requests may be timeout
> or queue-full-exception because we should handle previous requests which have
> been dropped by client and many resources at server are wasted.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)