[ 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)