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

Heng Chen commented on HBASE-16575:
-----------------------------------

Currently there are two ways client communicate with server,  one is call rpc 
directly (append, increment, get, delete, checkAndXX etc), the other is use AP 
which could do some async calls (mutate, batch, put etc).  
So RRCI#callWithRetries and RRCI#callWithoutRetries (AP will use it, and do 
retry logic by itself) exists,  to be more radical,  I think we could unify 
them with AP only,  HBASE-14703 has done some work,  i think we can go on with 
it because currently client logic is some bit confused with two implements and 
after unify them with AP,  we could do more works, for example, async interface 
in HTable

wdyt?  [~apurtell] [~jesse_yates] 

> unify the semantic of RRCI#callWithRetries and RRCI#callWithoutRetries when 
> the maxAttempts is configured to one
> ----------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-16575
>                 URL: https://issues.apache.org/jira/browse/HBASE-16575
>             Project: HBase
>          Issue Type: Bug
>            Reporter: ChiaPing Tsai
>            Priority: Minor
>
> It seems to me that RRCI#callWithRetries and RRCI#callWithoutRetries should 
> have the same logic if the maxAttempts is configured to one. But there are 
> some difference are shown below:
> 1) timeout
> 2) failure handle
> The quick solution is that we always call the RRCI#callWithRetries in the 
> RRCI#callWithoutRetries when the maxAttempts is configured to one.
> Any comment? Thanks.



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

Reply via email to