You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2018/12/19 02:37:00 UTC
[jira] [Commented] (HBASE-21615) Port HBASE-19994 (Create a new
class for RPC throttling exception, make it retryable) to branch-1
[ https://issues.apache.org/jira/browse/HBASE-21615?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16724631#comment-16724631 ]
Andrew Purtell commented on HBASE-21615:
----------------------------------------
The essence of the compatibility story
{code:java}
+ useRetryableThrottlingException = rsServices.getConfiguration()
+ .getBoolean(QuotaUtil.QUOTA_RETRYABLE_THROTTING_EXCEPTION_CONF_KEY,
+ QuotaUtil.QUOTA_RETRYABLE_THROTTING_EXCEPTION_DEFAULT);
{code}
Then
{code:java}
+ // Depending on whether we are supposed to throw a retryable IO exeption or not, choose
+ // the correct exception type to (re)throw
+ if (e instanceof ThrottlingException) {
+ if (useRetryableThrottlingException) {
+ throw new RpcThrottlingException(e.getMessage());
+ } else {
+ throw e;
+ }
+ } else if (e instanceof RpcThrottlingException) {
+ if (useRetryableThrottlingException) {
+ throw e;
+ } else {
+ throw new ThrottlingException(e.getMessage());
+ }
+ } else {
+ LOG.warn("Unexpected exception from quota check", e);
+ throw e;
+ }
{code}
> Port HBASE-19994 (Create a new class for RPC throttling exception, make it retryable) to branch-1
> -------------------------------------------------------------------------------------------------
>
> Key: HBASE-21615
> URL: https://issues.apache.org/jira/browse/HBASE-21615
> Project: HBase
> Issue Type: Sub-task
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Priority: Major
> Fix For: 1.5.0
>
>
> Backport the change from HBASE-19994 to branch-1 but make the new behavior configurable. Still changes the interfaces. Could be ok for a minor release (1.5.0)
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)