From 1ae3f00525413ab2773a86b88fc948f3242f48ca Mon Sep 17 00:00:00 2001 From: "terence.yoo" Date: Wed, 8 Jul 2015 14:15:17 +0900 Subject: [PATCH] Do not clear MetaCache if a ThrottlingException is thrown. --- .../main/java/org/apache/hadoop/hbase/client/ConnectionManager.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) 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..db680a1 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,7 @@ 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; } @@ -2637,7 +2638,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) { -- 2.3.2 (Apple Git-55)