[ 
https://issues.apache.org/jira/browse/HBASE-16285?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15400257#comment-15400257
 ] 

stack commented on HBASE-16285:
-------------------------------

On EnvironmentEdge, see the patch just committed at  HBASE-16256. I'd say, it 
ok to not use EE.

bq. But maybe we need not configurable, we can make it a const. 200ms may be 
too large, perhaps 50ms is OK for most scenes?

How about no delay padding? (I agree w/ [~anoop.hbase] that it would be good if 
we could save on new configs).

On the patch...

bq. 96        if (System.currentTimeMillis() >= call.deadline) {

Is it possible that further up in the code, we just did a 
System.currentTimeMillis (trying to save on our doing too many of them).

This patch is excellent.





> 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-v1.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)

Reply via email to