This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/master by this push:
     new 07ab9ed  Revert "HBASE-22699 refactor isMetaClearingException (#436)"
07ab9ed is described below

commit 07ab9ed2371cafd9655b65a09c66db4bb93aa35b
Author: Duo Zhang <[email protected]>
AuthorDate: Tue Aug 13 16:47:40 2019 +0800

    Revert "HBASE-22699 refactor isMetaClearingException (#436)"
    
    This reverts commit 009851d680e1bb58791715d5d3ad0387b5efbc72.
---
 .../hbase/exceptions/ClientExceptionsUtil.java     | 26 +++++++++-------------
 1 file changed, 11 insertions(+), 15 deletions(-)

diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/exceptions/ClientExceptionsUtil.java
 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/exceptions/ClientExceptionsUtil.java
index 1975297..6b1e251 100644
--- 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/exceptions/ClientExceptionsUtil.java
+++ 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/exceptions/ClientExceptionsUtil.java
@@ -32,6 +32,7 @@ import java.util.concurrent.TimeoutException;
 import org.apache.hadoop.hbase.CallDroppedException;
 import org.apache.hadoop.hbase.CallQueueTooBigException;
 import org.apache.hadoop.hbase.DoNotRetryIOException;
+import org.apache.hadoop.hbase.MultiActionResultTooLarge;
 import org.apache.hadoop.hbase.NotServingRegionException;
 import org.apache.hadoop.hbase.RegionTooBusyException;
 import org.apache.hadoop.hbase.RetryImmediatelyException;
@@ -58,23 +59,18 @@ public final class ClientExceptionsUtil {
     if (cur == null) {
       return true;
     }
-    return !regionDefinitelyOnTheRegionServerException(cur);
+    return !isSpecialException(cur) || (cur instanceof RegionMovedException)
+        || cur instanceof NotServingRegionException;
   }
 
-  private static boolean regionDefinitelyOnTheRegionServerException(Throwable 
t) {
-    return (t instanceof RegionTooBusyException || t instanceof 
RpcThrottlingException
-        || t instanceof RetryImmediatelyException || t instanceof 
CallQueueTooBigException
-        || t instanceof CallDroppedException || t instanceof 
NotServingRegionException
-        || t instanceof RequestTooBigException);
+  public static boolean isSpecialException(Throwable cur) {
+    return (cur instanceof RegionMovedException || cur instanceof 
RegionOpeningException
+        || cur instanceof RegionTooBusyException || cur instanceof 
RpcThrottlingException
+        || cur instanceof MultiActionResultTooLarge || cur instanceof 
RetryImmediatelyException
+        || cur instanceof CallQueueTooBigException || cur instanceof 
CallDroppedException
+        || cur instanceof NotServingRegionException || cur instanceof 
RequestTooBigException);
   }
 
-  /**
-   * This function is the alias of regionDefinitelyOnTheRegionServerException,
-   * whose name is confusing in the function findException().
-   */
-  private static boolean matchExceptionWeCare(Throwable t) {
-    return regionDefinitelyOnTheRegionServerException(t);
-  }
 
   /**
    * Look for an exception we know in the remote exception:
@@ -91,7 +87,7 @@ public final class ClientExceptionsUtil {
     }
     Throwable cur = (Throwable) exception;
     while (cur != null) {
-      if (matchExceptionWeCare(cur)) {
+      if (isSpecialException(cur)) {
         return cur;
       }
       if (cur instanceof RemoteException) {
@@ -99,7 +95,7 @@ public final class ClientExceptionsUtil {
         cur = re.unwrapRemoteException();
 
         // unwrapRemoteException can return the exception given as a parameter 
when it cannot
-        // unwrap it. In this case, there is no need to look further
+        //  unwrap it. In this case, there is no need to look further
         // noinspection ObjectEquality
         if (cur == re) {
           return cur;

Reply via email to