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

Mikhail Antonov commented on HBASE-15593:
-----------------------------------------

[~stack] Yeah, I'm good with it in 1.3.

Skimmed the last patch, had a few questions as I go though..

bq. requestHeaderBuilder.setTimeout(call.rpcTimeout > Integer.MAX_VALUE ?
This check looks weird?

{code}
/**
270        * Minimum allowable timeout (in milliseconds) in rpc request's 
header. This
271        * configuration exists to prevent the rpc service regarding this 
request as timeout immediately.
272        */

....
if (header.hasTimeout()){
1938            timeout = Math.max(minClientRequestTimeout, 
header.getTimeout());
1939          }
{code}
Why do we need that? If that to prevent clients from accidentally or willfully 
setting ridiculously small timeout with high num retries and DDOS-ing cluster? 
If you're a client and want smaller latency, talk to cluster admit?

> Time limit of scanning should be offered by client
> --------------------------------------------------
>
>                 Key: HBASE-15593
>                 URL: https://issues.apache.org/jira/browse/HBASE-15593
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 1.2.0, 1.1.4
>            Reporter: Phil Yang
>            Assignee: Phil Yang
>             Fix For: 2.0.0, 1.3.0, 1.4.0, 1.2.2, 1.1.6
>
>         Attachments: HBASE-15593-branch-1-v1.patch, 
> HBASE-15593-branch-1-v2.patch, HBASE-15593-branch-1-v3.patch, 
> HBASE-15593-branch-1.1-v1.patch, HBASE-15593-branch-1.1-v2.patch, 
> HBASE-15593-branch-1.1-v3.patch, HBASE-15593-branch-1.2-v1.patch, 
> HBASE-15593-branch-1.2-v2.patch, HBASE-15593-branch-1.2-v3.patch, 
> HBASE-15593-v1.patch, HBASE-15593-v2.patch, HBASE-15593-v3.patch, 
> HBASE-15593-v4.patch, HBASE-15593-v5.patch, HBASE-15593-v6.patch, 
> HBASE-15593-v7.patch
>
>
> In RSRpcServices.scan, we will set a time limit equaling to 
> Math.min(scannerLeaseTimeoutPeriod, rpcTimeout) / 2, and will response 
> heartbeat message if we reach this limit. However, two timeout settings 
> (hbase.client.scanner.timeout.period and hbase.rpc.timeout) are read from 
> RS's configure, which may be different from client's. If client's setting is 
> much less than server's, there may still be timeout at client side.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to