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

Hudson commented on HBASE-15866:
--------------------------------

SUCCESS: Integrated in HBase-1.4 #336 (See 
[https://builds.apache.org/job/HBase-1.4/336/])
HBASE-15866 Split hbase.rpc.timeout into *.read.timeout and (apurtell: rev 
ec99838b9c5ac931b16e7cc3c7c2b7bf5b024c0c)
* 
hbase-client/src/main/java/org/apache/hadoop/hbase/client/BufferedMutatorImpl.java
* 
hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestHCM.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/HConnectionTestingUtility.java
* hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java
* 
hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTableMultiplexer.java
* hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/client/RemoteHTable.java
* 
hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/client/HTableWrapper.java
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/Table.java
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/AsyncProcess.java
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTablePool.java


> Split hbase.rpc.timeout into *.read.timeout and *.write.timeout
> ---------------------------------------------------------------
>
>                 Key: HBASE-15866
>                 URL: https://issues.apache.org/jira/browse/HBASE-15866
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 2.0.0
>            Reporter: Andrew Purtell
>            Assignee: Vivek Koppuru
>              Labels: newbie, patch
>             Fix For: 2.0.0, 1.4.0
>
>         Attachments: HBASE-15866-branch-1.patch, HBASE-15866.patch, 
> HBASE-15866.patch, HBASE-15866.patch, HBASE-15866.patch, HBASE-15866.patch, 
> read-write-rpc-timeouts.patch, read-write-rpc.v1.patch
>
>
> We have a single tunable for the RPC timeout interval - hbase.rpc.timeout. 
> This is fine for the general case but there are use cases where it would be 
> advantageous to set two separate timeouts for reads (gets, scans, perhaps 
> with significant server side filtering - although the new scanner heartbeat 
> feature mitigates where available) and mutations (fail fast under tight SLA, 
> resubmit or take mitigating action). 
> I propose we refer to a configuration setting "hbase.rpc.read.timeout" when 
> handling read operations and "hbase.rpc.write.timeout" when handling write 
> operations. If those values are not set in the configuration, fall back to 
> the value of "hbase.rpc.timeout" or its default. 
> So for example in HTable instead of one global timeout for each RPC 
> (rpcTimeout), there would be a readRpcTimeout and writeRpcTimeout also set up 
> in HTable#finishSetup. Then wherever we set up RPC with 
> RpcRetryingCallerFactory#newCaller(int rpcTimeout) we pass in the read or 
> write timeout depending on what the op is.
> In general I don't like the idea of adding configuration parameters to our 
> already heavyweight set, but I think the inability to control timeouts 
> separately for reads and writes is an operational deficit.
> See also PHOENIX-2916.



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

Reply via email to