[
https://issues.apache.org/jira/browse/HBASE-20493?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrew Purtell updated HBASE-20493:
-----------------------------------
Release Note: Before this change when RPC quotas are exceeded the server
will throw ThrottlingException to the client, which is unfriendly, because
ThrottlingException is derived from DoNotRetryIOException. The application must
handle throttling. With this change we introduce a new exception type for RPC
quotas, RpcThrottlingException, which is retryable. If the configuration
parameter 'hbase.quota.retryable.throttlingexception' (default: 'false') is set
to 'true' the server will throw RpcThrottlingException back to the client
instead, and the client will handle this exception like any other transient
condition, retrying using the configured retry policy until exhausted. The
application will still need to handle the case where, because of throttling,
all retries have been exhausted, but this is the normal
RetriesExhaustedException that applications have to deal with anyway.
Throttling will no longer demand special handling.
> Port HBASE-19994 (Create a new class for RPC throttling exception, make it
> retryable) to branch-1
> -------------------------------------------------------------------------------------------------
>
> Key: HBASE-20493
> URL: https://issues.apache.org/jira/browse/HBASE-20493
> Project: HBase
> Issue Type: Task
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Priority: Minor
> Fix For: 1.5.0
>
> Attachments: HBASE-20493-branch-1.patch
>
>
> Port HBASE-19994 (Create a new class for RPC throttling exception, make it
> retryable). Need to preserve the current behavior where the client gets a
> non-retryable ThrottlingException and only optionally throw back the
> retryable RpcThrottlingException if explicitly allowed by configuration.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)