PHOENIX-3481 Phoenix initialization fails for HBase 0.98.21 and beyond

Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/c763cf97
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/c763cf97
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/c763cf97

Branch: refs/heads/calcite
Commit: c763cf97f3c1b2013aae81a6b938e798bb242a9e
Parents: 3b07c2f
Author: Samarth <samarth.j...@salesforce.com>
Authored: Tue Nov 15 10:42:46 2016 -0800
Committer: Samarth <samarth.j...@salesforce.com>
Committed: Tue Nov 15 10:42:46 2016 -0800

----------------------------------------------------------------------
 .../apache/phoenix/query/ConnectionQueryServicesImpl.java   | 9 +--------
 .../src/main/java/org/apache/phoenix/util/ServerUtil.java   | 5 +++++
 2 files changed, 6 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/phoenix/blob/c763cf97/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java
----------------------------------------------------------------------
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java
 
b/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java
index 379df9d..fc59603 100644
--- 
a/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java
+++ 
b/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java
@@ -1071,14 +1071,7 @@ public class ConnectionQueryServicesImpl extends 
DelegateQueryServices implement
                      * brought down.
                      */
                     newDesc.setValue(HTableDescriptor.SPLIT_POLICY, 
MetaDataSplitPolicy.class.getName());
-                    if (allowOnlineTableSchemaUpdate()) {
-                        // No need to wait/poll for this update
-                        admin.modifyTable(physicalTable, newDesc);
-                    } else {
-                        admin.disableTable(physicalTable);
-                        admin.modifyTable(physicalTable, newDesc);
-                        admin.enableTable(physicalTable);
-                    }
+                    modifyTable(tableName, newDesc, true);
                 }
                 return null;
             } else {

http://git-wip-us.apache.org/repos/asf/phoenix/blob/c763cf97/phoenix-core/src/main/java/org/apache/phoenix/util/ServerUtil.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/util/ServerUtil.java 
b/phoenix-core/src/main/java/org/apache/phoenix/util/ServerUtil.java
index 679c7a1..a3940fc 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/util/ServerUtil.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/util/ServerUtil.java
@@ -25,6 +25,7 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
 import org.apache.hadoop.hbase.DoNotRetryIOException;
+import org.apache.hadoop.hbase.NotServingRegionException;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.client.HTableInterface;
 import org.apache.hadoop.hbase.client.HTablePool;
@@ -34,6 +35,7 @@ import org.apache.phoenix.exception.PhoenixIOException;
 import org.apache.phoenix.exception.SQLExceptionCode;
 import org.apache.phoenix.exception.SQLExceptionInfo;
 import org.apache.phoenix.hbase.index.util.VersionUtil;
+import org.apache.phoenix.schema.StaleRegionBoundaryCacheException;
 
 
 @SuppressWarnings("deprecation")
@@ -113,6 +115,9 @@ public class ServerUtil {
     
     public static SQLException parseServerExceptionOrNull(Throwable t) {
         while (t.getCause() != null) {
+            if (t instanceof NotServingRegionException) {
+                return parseRemoteException(new 
StaleRegionBoundaryCacheException());
+            }
             t = t.getCause();
         }
         return parseRemoteException(t);

Reply via email to