[
https://issues.apache.org/jira/browse/HBASE-17449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15818321#comment-15818321
]
Duo Zhang commented on HBASE-17449:
-----------------------------------
I reviewed the usage of {{hbase.client.scanner.timeout.period}} and found that
it is also used at server side. It is also used to expire scanner leases. And
in the current implementation, a separated scan rpc timeout is useless because
that, if we get a rpc timeout at client side, then usually we will get an
OutOfOrderScannerException for the next call and it does not make any
difference than UnknownScannerException. So a scan rpc timeout less than the
scanner timeout(like operation timeout for other operations) is useless.
Will open a new issue to discuss this. I think we need to reconsider the
timeout configs for scan.
Thanks.
> Add explicit document on different timeout settings
> ---------------------------------------------------
>
> Key: HBASE-17449
> URL: https://issues.apache.org/jira/browse/HBASE-17449
> Project: HBase
> Issue Type: Improvement
> Components: documentation
> Reporter: Yu Li
>
> Currently we have more than one timeout settings, mainly includes:
> * hbase.rpc.timeout
> * hbase.client.operation.timeout
> * hbase.client.scanner.timeout.period
> And in latest branch-1 or master branch code, we will have two other
> properties:
> * hbase.rpc.read.timeout
> * hbase.rpc.write.timeout
> However, in current refguid we don't have explicit instruction on the
> difference of these timeout settings (there're explanations for each
> property, but no instruction on when to use which)
> In my understanding, for RPC layer timeout, or say each rpc call:
> * Scan (openScanner/next): controlled by hbase.client.scanner.timeout.period
> * Other operations:
> 1. For released versions: controlled by hbase.rpc.timeout
> 2. For 1.4+ versions: read operation controlled by hbase.rpc.read.timeout,
> write operation controlled by hbase.rpc.write.timeout, or hbase.rpc.timeout
> if the previous two are not set.
> And hbase.client.operation.timeout is a higher-level control counting retry
> in, or say the overall control for one user call.
> After this JIRA, I hope when users ask questions like "What settings I should
> use if I don't want to wait for more than 1 second for a single
> put/get/scan.next call", we could give a neat answer.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)