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

Phil Yang commented on HBASE-15645:
-----------------------------------

Furthermore, I think the timeout of scan rpc should also be hbase.rpc.timeout 
especially now we have heartbeat for scan. We use 
hbase.client.scanner.timeout.period in two places now, one is the timeout for 
scan rpc, the other is TTL for a scanner in RS, and they are different. The 
timeout of scan rpc means "if server don't response within xxx ms, client 
should retry or throw an exception", the TTL means "if client doesn't send any 
request for this scanner more than xxx ms, we can remove the cached scanner". 
Although two usages are independent because one is at client and one is at 
server so we can set different value at two sides, but I think it is more clear 
to split them into two conf and for scan rpc timeout, the hbase.rpc.timeout is 
enough now.

There may be a further step that we support each request having different 
timeout by add a parameter in Table.get/scan/put...

Any ideas? Thanks

> hbase.rpc.timeout is not used in get operation
> ----------------------------------------------
>
>                 Key: HBASE-15645
>                 URL: https://issues.apache.org/jira/browse/HBASE-15645
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Phil Yang
>            Assignee: Phil Yang
>            Priority: Critical
>
> While fixing HBASE-15593, I find that we use operationTimeout as the timeout 
> of Get operation rpc call (hbase.client.scanner.timeout.period is used in 
> scan rpc), not the hbase.rpc.timeout.
> This can be verified by add one line in TestHCM.setUpBeforeClass():
> {code}
> TEST_UTIL.getConfiguration().setLong(HConstants.HBASE_RPC_TIMEOUT_KEY, 3000);
> {code}
> and then run testOperationTimeout(), the test passes but it should have 
> failed because we should get rpc timeout first after 3 seconds then client 
> should retry and timeout again and again until operationTimeout or max 
> retries reached.
> If I port this test to 0.98, it will fail as expected.



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

Reply via email to