Repository: hbase Updated Branches: refs/heads/branch-1.2 37e273b8b -> de862f38b
HBASE-14041 Do not clear MetaCache if a ThrottlingException is thrown Amending-Author: Sean Busbey <[email protected]> Signed-off-by: Sean Busbey <[email protected]> Conflicts: hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/de862f38 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/de862f38 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/de862f38 Branch: refs/heads/branch-1.2 Commit: de862f38b926536825b24bb923de83a5826de441 Parents: 37e273b Author: terence.yoo <[email protected]> Authored: Thu Jul 9 13:43:37 2015 +0900 Committer: Sean Busbey <[email protected]> Committed: Wed Jul 15 03:33:21 2015 -0500 ---------------------------------------------------------------------- .../org/apache/hadoop/hbase/client/ConnectionManager.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/de862f38/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java index 26c6a7e..e51f803 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java @@ -171,6 +171,7 @@ import org.apache.hadoop.hbase.protobuf.generated.MasterProtos.TruncateTableRequ import org.apache.hadoop.hbase.protobuf.generated.MasterProtos.TruncateTableResponse; import org.apache.hadoop.hbase.protobuf.generated.MasterProtos.UnassignRegionRequest; import org.apache.hadoop.hbase.protobuf.generated.MasterProtos.UnassignRegionResponse; +import org.apache.hadoop.hbase.quotas.ThrottlingException; import org.apache.hadoop.hbase.regionserver.RegionServerStoppedException; import org.apache.hadoop.hbase.security.User; import org.apache.hadoop.hbase.security.UserProvider; @@ -2143,7 +2144,8 @@ class ConnectionManager { HRegionInfo regionInfo = oldLocation.getRegionInfo(); Throwable cause = findException(exception); if (cause != null) { - if (cause instanceof RegionTooBusyException || cause instanceof RegionOpeningException) { + if (cause instanceof RegionTooBusyException || cause instanceof RegionOpeningException + || cause instanceof ThrottlingException) { // We know that the region is still on this region server return; } @@ -2627,7 +2629,8 @@ class ConnectionManager { * - hadoop.ipc wrapped exceptions * - nested exceptions * - * Looks for: RegionMovedException / RegionOpeningException / RegionTooBusyException + * Looks for: RegionMovedException / RegionOpeningException / RegionTooBusyException / + * ThrottlingException * @return null if we didn't find the exception, the exception otherwise. */ public static Throwable findException(Object exception) { @@ -2637,7 +2640,7 @@ class ConnectionManager { Throwable cur = (Throwable) exception; while (cur != null) { if (cur instanceof RegionMovedException || cur instanceof RegionOpeningException - || cur instanceof RegionTooBusyException) { + || cur instanceof RegionTooBusyException || cur instanceof ThrottlingException) { return cur; } if (cur instanceof RemoteException) {
