You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by ra...@apache.org on 2017/11/09 11:42:40 UTC

phoenix git commit: PHOENIX-4303 Fixing getting table from RegionCoprocessorEnvironment(Rajeshbabu)

Repository: phoenix
Updated Branches:
  refs/heads/5.x-HBase-2.0 d85e9165a -> 754201cfb


PHOENIX-4303 Fixing getting table from RegionCoprocessorEnvironment(Rajeshbabu)


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

Branch: refs/heads/5.x-HBase-2.0
Commit: 754201cfb982ae9ec7f0e2cb0a0e3ecb8d1ca4a7
Parents: d85e916
Author: Rajeshbabu Chintaguntla <ra...@apache.org>
Authored: Thu Nov 9 17:12:19 2017 +0530
Committer: Rajeshbabu Chintaguntla <ra...@apache.org>
Committed: Thu Nov 9 17:12:19 2017 +0530

----------------------------------------------------------------------
 .../phoenix/end2end/index/LocalIndexIT.java     | 14 +++--
 .../IndexHalfStoreFileReaderGenerator.java      |  2 +-
 .../DelegateRegionCoprocessorEnvironment.java   | 61 +++++++++++++-------
 .../coprocessor/MetaDataRegionObserver.java     |  7 ++-
 .../index/table/CoprocessorHTableFactory.java   |  9 +--
 .../hbase/index/write/IndexWriterUtils.java     |  3 +-
 .../write/ParallelWriterIndexCommitter.java     |  2 +-
 .../TrackingParallelWriterIndexCommitter.java   |  2 +-
 .../index/PhoenixIndexFailurePolicy.java        |  2 +-
 .../index/PhoenixTransactionalIndexer.java      |  3 +-
 .../phoenix/mapreduce/AbstractBulkLoadTool.java |  1 -
 .../query/ConnectionQueryServicesImpl.java      |  7 ++-
 .../stats/DefaultStatisticsCollector.java       |  2 +-
 .../phoenix/schema/stats/StatisticsWriter.java  |  2 +-
 .../transaction/PhoenixTransactionalTable.java  |  1 -
 .../java/org/apache/phoenix/util/IndexUtil.java |  2 +-
 .../org/apache/phoenix/util/ServerUtil.java     |  2 +-
 17 files changed, 73 insertions(+), 49 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/LocalIndexIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/LocalIndexIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/LocalIndexIT.java
index 615d2aa..238b88e 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/LocalIndexIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/LocalIndexIT.java
@@ -223,8 +223,11 @@ public class LocalIndexIT extends BaseLocalIndexIT {
         assertTrue(rs.next());
         assertEquals(4, rs.getInt(1));
         HBaseAdmin admin = driver.getConnectionQueryServices(getUrl(), TestUtil.TEST_PROPERTIES).getAdmin();
-        HTable indexTable = new HTable(admin.getConfiguration(), indexPhysicalTableName);
-        Pair<byte[][], byte[][]> startEndKeys = indexTable.getStartEndKeys();
+        Table indexTable =
+                admin.getConnection().getTable(TableName.valueOf(indexPhysicalTableName));
+        Pair<byte[][], byte[][]> startEndKeys =
+                admin.getConnection().getRegionLocator(TableName.valueOf(indexPhysicalTableName))
+                        .getStartEndKeys();
         byte[][] startKeys = startEndKeys.getFirst();
         byte[][] endKeys = startEndKeys.getSecond();
         for (int i = 0; i < startKeys.length; i++) {
@@ -423,8 +426,11 @@ public class LocalIndexIT extends BaseLocalIndexIT {
             conn1.createStatement().execute("CREATE LOCAL INDEX " + indexName + " ON " + tableName + "(v1)");
             conn1.createStatement().execute("DROP INDEX " + indexName + " ON " + tableName);
             HBaseAdmin admin = driver.getConnectionQueryServices(getUrl(), TestUtil.TEST_PROPERTIES).getAdmin();
-            HTable table = new HTable(admin.getConfiguration() ,TableName.valueOf(tableName));
-            Pair<byte[][], byte[][]> startEndKeys = table.getStartEndKeys();
+            Table table =
+                    admin.getConnection().getTable(TableName.valueOf(tableName));
+            Pair<byte[][], byte[][]> startEndKeys =
+                    admin.getConnection().getRegionLocator(TableName.valueOf(tableName))
+                            .getStartEndKeys();
             byte[][] startKeys = startEndKeys.getFirst();
             byte[][] endKeys = startEndKeys.getSecond();
             // No entry should be present in local index table after drop index.

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/hadoop/hbase/regionserver/IndexHalfStoreFileReaderGenerator.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/hadoop/hbase/regionserver/IndexHalfStoreFileReaderGenerator.java b/phoenix-core/src/main/java/org/apache/hadoop/hbase/regionserver/IndexHalfStoreFileReaderGenerator.java
index 992e65f..a50d5ce 100644
--- a/phoenix-core/src/main/java/org/apache/hadoop/hbase/regionserver/IndexHalfStoreFileReaderGenerator.java
+++ b/phoenix-core/src/main/java/org/apache/hadoop/hbase/regionserver/IndexHalfStoreFileReaderGenerator.java
@@ -103,7 +103,7 @@ public class IndexHalfStoreFileReaderGenerator extends BaseRegionObserver {
             Table metaTable = null;
             PhoenixConnection conn = null;
             try {
-                metaTable = connection.getTable(TableName.META_TABLE_NAME));
+                metaTable = connection.getTable(TableName.META_TABLE_NAME);
                 ResultScanner scanner = null;
                 Result result = null;
                 try {

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/DelegateRegionCoprocessorEnvironment.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/DelegateRegionCoprocessorEnvironment.java b/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/DelegateRegionCoprocessorEnvironment.java
index da5e7a8..25281fe 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/DelegateRegionCoprocessorEnvironment.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/DelegateRegionCoprocessorEnvironment.java
@@ -22,13 +22,15 @@ import java.util.concurrent.ConcurrentMap;
 import java.util.concurrent.ExecutorService;
 
 import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.hbase.Coprocessor;
-import org.apache.hadoop.hbase.HRegionInfo;
+import org.apache.hadoop.hbase.ServerName;
 import org.apache.hadoop.hbase.TableName;
-import org.apache.hadoop.hbase.client.Table;
+import org.apache.hadoop.hbase.client.Connection;
+import org.apache.hadoop.hbase.client.RegionInfo;
+import org.apache.hadoop.hbase.coprocessor.RegionCoprocessor;
 import org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment;
+import org.apache.hadoop.hbase.metrics.MetricRegistry;
+import org.apache.hadoop.hbase.regionserver.OnlineRegions;
 import org.apache.hadoop.hbase.regionserver.Region;
-import org.apache.hadoop.hbase.regionserver.RegionServerServices;
 
 /**
  * Class to encapsulate {@link RegionCoprocessorEnvironment} for phoenix coprocessors. Often we
@@ -56,10 +58,6 @@ public class DelegateRegionCoprocessorEnvironment implements RegionCoprocessorEn
     }
 
     @Override
-    public Coprocessor getInstance() {
-        return delegate.getInstance();
-    }
-    @Override
     public int getPriority() {
         return delegate.getPriority();
     }
@@ -75,17 +73,6 @@ public class DelegateRegionCoprocessorEnvironment implements RegionCoprocessorEn
     }
 
     @Override
-    public Table getTable(TableName tableName) throws IOException {
-        return delegate.getTable(tableName);
-    }
-
-    @Override
-    public Table getTable(TableName tableName, ExecutorService service)
-            throws IOException {
-        return delegate.getTable(tableName, service);
-    }
-
-    @Override
     public ClassLoader getClassLoader() {
         return delegate.getClassLoader();
     }
@@ -96,7 +83,7 @@ public class DelegateRegionCoprocessorEnvironment implements RegionCoprocessorEn
     }
 
     @Override
-    public HRegionInfo getRegionInfo() {
+    public RegionInfo getRegionInfo() {
         return delegate.getRegionInfo();
     }
 
@@ -106,8 +93,38 @@ public class DelegateRegionCoprocessorEnvironment implements RegionCoprocessorEn
     }
 
     @Override
-    public RegionServerServices getRegionServerServices() {
-        return delegate.getRegionServerServices();
+    public RegionCoprocessor getInstance() {
+        return delegate.getInstance();
+    }
+
+    @Override
+    public void startup() throws IOException {
+        delegate.startup();
+    }
+
+    @Override
+    public void shutdown() {
+        delegate.shutdown();
+    }
+
+    @Override
+    public OnlineRegions getOnlineRegions() {
+        return delegate.getOnlineRegions();
+    }
+
+    @Override
+    public ServerName getServerName() {
+        return delegate.getServerName();
+    }
+
+    @Override
+    public Connection getConnection() {
+        return delegate.getConnection();
+    }
+
+    @Override
+    public MetricRegistry getMetricRegistryForRegionServer() {
+        return delegate.getMetricRegistryForRegionServer();
     }
 
 }

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataRegionObserver.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataRegionObserver.java b/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataRegionObserver.java
index e7b9a35..0e69651 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataRegionObserver.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataRegionObserver.java
@@ -43,6 +43,7 @@ import org.apache.hadoop.hbase.CoprocessorEnvironment;
 import org.apache.hadoop.hbase.HConstants;
 import org.apache.hadoop.hbase.client.Result;
 import org.apache.hadoop.hbase.client.Scan;
+import org.apache.hadoop.hbase.client.Table;
 import org.apache.hadoop.hbase.coprocessor.ObserverContext;
 import org.apache.hadoop.hbase.coprocessor.RegionCoprocessor;
 import org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment;
@@ -165,9 +166,9 @@ public class MetaDataRegionObserver implements RegionObserver,RegionCoprocessor
                 try {
                     ReadOnlyProps props=new ReadOnlyProps(env.getConfiguration().iterator());
                     Thread.sleep(1000);
-                    metaTable = env.getTable(
+                    metaTable = env.getConnection().getTable(
                             SchemaUtil.getPhysicalName(PhoenixDatabaseMetaData.SYSTEM_CATALOG_NAME_BYTES, props));
-                    statsTable = env.getTable(
+                    statsTable = env.getConnection().getTable(
                             SchemaUtil.getPhysicalName(PhoenixDatabaseMetaData.SYSTEM_STATS_NAME_BYTES, props));
                     if (UpgradeUtil.truncateStats(metaTable, statsTable)) {
                         LOG.info("Stats are successfully truncated for upgrade 4.7!!");
@@ -411,7 +412,7 @@ public class MetaDataRegionObserver implements RegionObserver,RegionCoprocessor
 						List<Pair<PTable,Long>> pairs = entry.getValue();
                         List<PTable> indexesToPartiallyRebuild = Lists.newArrayListWithExpectedSize(pairs.size());
 						try (
-                        Table metaTable = env.getTable(
+                        Table metaTable = env.getConnection().getTable(
 								SchemaUtil.getPhysicalName(PhoenixDatabaseMetaData.SYSTEM_CATALOG_NAME_BYTES, props))) {
 							long earliestDisableTimestamp = Long.MAX_VALUE;
                             long latestUpperBoundTimestamp = Long.MIN_VALUE;

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/table/CoprocessorHTableFactory.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/table/CoprocessorHTableFactory.java b/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/table/CoprocessorHTableFactory.java
index 8426484..d626689 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/table/CoprocessorHTableFactory.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/table/CoprocessorHTableFactory.java
@@ -23,24 +23,25 @@ import java.util.concurrent.ExecutorService;
 import org.apache.hadoop.hbase.CoprocessorEnvironment;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.client.Table;
+import org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment;
 import org.apache.phoenix.hbase.index.util.ImmutableBytesPtr;
 
 public class CoprocessorHTableFactory implements HTableFactory {
 
-    private CoprocessorEnvironment e;
+    private RegionCoprocessorEnvironment e;
 
-    public CoprocessorHTableFactory(CoprocessorEnvironment e) {
+    public CoprocessorHTableFactory(RegionCoprocessorEnvironment e) {
         this.e = e;
     }
 
     @Override
     public Table getTable(ImmutableBytesPtr tablename) throws IOException {
-        return this.e.getTable(TableName.valueOf(tablename.copyBytesIfNecessary()));
+        return this.e.getConnection().getTable(TableName.valueOf(tablename.copyBytesIfNecessary()));
     }
     
     @Override
     public Table getTable(ImmutableBytesPtr tablename,ExecutorService pool) throws IOException {
-        return this.e.getTable(TableName.valueOf(tablename.copyBytesIfNecessary()), pool);
+        return this.e.getConnection().getTable(TableName.valueOf(tablename.copyBytesIfNecessary()), pool);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/IndexWriterUtils.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/IndexWriterUtils.java b/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/IndexWriterUtils.java
index 16c26ba..0ef7e18 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/IndexWriterUtils.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/IndexWriterUtils.java
@@ -25,7 +25,6 @@ import javax.annotation.concurrent.GuardedBy;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.hbase.CoprocessorEnvironment;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.client.Connection;
 import org.apache.hadoop.hbase.client.CoprocessorHConnection;
@@ -85,7 +84,7 @@ public class IndexWriterUtils {
     // private ctor for utilites
   }
 
-    public static HTableFactory getDefaultDelegateHTableFactory(CoprocessorEnvironment env) {
+    public static HTableFactory getDefaultDelegateHTableFactory(RegionCoprocessorEnvironment env) {
         // create a simple delegate factory, setup the way we need
         Configuration conf = env.getConfiguration();
         // set the number of threads allowed per table.

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/ParallelWriterIndexCommitter.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/ParallelWriterIndexCommitter.java b/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/ParallelWriterIndexCommitter.java
index dadaf75..f78fdcf 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/ParallelWriterIndexCommitter.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/ParallelWriterIndexCommitter.java
@@ -163,7 +163,7 @@ public class ParallelWriterIndexCommitter implements IndexCommitter {
                         }
                         table = factory.getTable(tableReference.get());
                         throwFailureIfDone();
-                        table.batch(mutations);
+                        table.batch(mutations, null);
                     } catch (SingleIndexWriteFailureException e) {
                         throw e;
                     } catch (IOException e) {

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/TrackingParallelWriterIndexCommitter.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/TrackingParallelWriterIndexCommitter.java b/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/TrackingParallelWriterIndexCommitter.java
index a60ced4..d9a9b21 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/TrackingParallelWriterIndexCommitter.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/hbase/index/write/TrackingParallelWriterIndexCommitter.java
@@ -176,7 +176,7 @@ public class TrackingParallelWriterIndexCommitter implements IndexCommitter {
 
                         table = factory.getTable(tableReference.get());
                         throwFailureIfDone();
-                        table.batch(mutations);
+                        table.batch(mutations, null);
                     } catch (InterruptedException e) {
                         // reset the interrupt status on the thread
                         Thread.currentThread().interrupt();

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/index/PhoenixIndexFailurePolicy.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/index/PhoenixIndexFailurePolicy.java b/phoenix-core/src/main/java/org/apache/phoenix/index/PhoenixIndexFailurePolicy.java
index c217d8e..297902f 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/index/PhoenixIndexFailurePolicy.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/index/PhoenixIndexFailurePolicy.java
@@ -225,7 +225,7 @@ public class PhoenixIndexFailurePolicy extends DelegateIndexFailurePolicy {
                 minTimeStamp *= -1;
             }
             // Disable the index by using the updateIndexState method of MetaDataProtocol end point coprocessor.
-            try (Table systemTable = env.getTable(SchemaUtil
+            try (Table systemTable = env.getConnection().getTable(SchemaUtil
                     .getPhysicalTableName(PhoenixDatabaseMetaData.SYSTEM_CATALOG_NAME_BYTES, env.getConfiguration()))) {
                 MetaDataMutationResult result = IndexUtil.updateIndexState(indexTableName, minTimeStamp,
                         systemTable, newState);

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/index/PhoenixTransactionalIndexer.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/index/PhoenixTransactionalIndexer.java b/phoenix-core/src/main/java/org/apache/phoenix/index/PhoenixTransactionalIndexer.java
index 2dea53c..9847205 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/index/PhoenixTransactionalIndexer.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/index/PhoenixTransactionalIndexer.java
@@ -50,6 +50,7 @@ import org.apache.hadoop.hbase.client.Mutation;
 import org.apache.hadoop.hbase.client.Result;
 import org.apache.hadoop.hbase.client.ResultScanner;
 import org.apache.hadoop.hbase.client.Scan;
+import org.apache.hadoop.hbase.client.Table;
 import org.apache.hadoop.hbase.coprocessor.ObserverContext;
 import org.apache.hadoop.hbase.coprocessor.RegionCoprocessor;
 import org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment;
@@ -344,7 +345,7 @@ public class PhoenixTransactionalIndexer implements RegionObserver, RegionCoproc
                 ScanRanges scanRanges = ScanRanges.create(SchemaUtil.VAR_BINARY_SCHEMA, Collections.singletonList(keys), ScanUtil.SINGLE_COLUMN_SLOT_SPAN, KeyRange.EVERYTHING_RANGE, null, true, -1);
                 scanRanges.initializeScan(scan);
                 TableName tableName = env.getRegion().getRegionInfo().getTable();
-                Table htable = env.getTable(tableName);
+                Table htable = env.getConnection().getTable(tableName);
                 txTable = TransactionFactory.getTransactionFactory().getTransactionalTable(txnContext, htable);
                 // For rollback, we need to see all versions, including
                 // the last committed version as there may be multiple

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/mapreduce/AbstractBulkLoadTool.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/mapreduce/AbstractBulkLoadTool.java b/phoenix-core/src/main/java/org/apache/phoenix/mapreduce/AbstractBulkLoadTool.java
index 22e5c3c..90a69af 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/mapreduce/AbstractBulkLoadTool.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/mapreduce/AbstractBulkLoadTool.java
@@ -43,7 +43,6 @@ import org.apache.hadoop.hbase.HBaseConfiguration;
 import org.apache.hadoop.hbase.KeyValue;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.client.ConnectionFactory;
-import org.apache.hadoop.hbase.client.HTable;
 import org.apache.hadoop.hbase.client.RegionLocator;
 import org.apache.hadoop.hbase.client.Table;
 import org.apache.hadoop.hbase.io.ImmutableBytesWritable;

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/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 1d9a521..4c60aa9 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
@@ -1269,7 +1269,8 @@ public class ConnectionQueryServicesImpl extends DelegateQueryServices implement
             boolean retried = false;
             while (true) {
                 if (retried) {
-                    connection.relocateRegion(SchemaUtil.getPhysicalName(tableName, this.getProps()), tableKey);
+                    ((ClusterConnection) connection).relocateRegion(
+                        SchemaUtil.getPhysicalName(tableName, this.getProps()), tableKey);
                 }
 
                 Table ht = this.getTable(SchemaUtil.getPhysicalName(tableName, this.getProps()).getName());
@@ -3691,7 +3692,7 @@ public class ConnectionQueryServicesImpl extends DelegateQueryServices implement
             Object[] resultObjects = null;
             SQLException sqlE = null;
             try {
-                resultObjects= hTable.batch(incrementBatch, null);
+                hTable.batch(incrementBatch, resultObjects);
             } catch (IOException e) {
                 sqlE = ServerUtil.parseServerException(e);
             } catch (InterruptedException e) {
@@ -4247,7 +4248,7 @@ public class ConnectionQueryServicesImpl extends DelegateQueryServices implement
         boolean reload =false;
         while (true) {
             try {
-                return connection.getRegionLocation(TableName.valueOf(tableName), row, reload);
+                return connection.getRegionLocator(TableName.valueOf(tableName)).getRegionLocation(row, reload);
             } catch (org.apache.hadoop.hbase.TableNotFoundException e) {
                 String fullName = Bytes.toString(tableName);
                 throw new TableNotFoundException(SchemaUtil.getSchemaNameFromFullName(fullName), SchemaUtil.getTableNameFromFullName(fullName));

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/schema/stats/DefaultStatisticsCollector.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/schema/stats/DefaultStatisticsCollector.java b/phoenix-core/src/main/java/org/apache/phoenix/schema/stats/DefaultStatisticsCollector.java
index c1cce01..d82c66f 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/schema/stats/DefaultStatisticsCollector.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/schema/stats/DefaultStatisticsCollector.java
@@ -127,7 +127,7 @@ class DefaultStatisticsCollector implements StatisticsCollector {
             Table htable = null;
             try {
                 // Next check for GUIDE_POST_WIDTH on table
-                htable = env.getTable(
+                htable = env.getConnection().getTable(
                     SchemaUtil.getPhysicalTableName(PhoenixDatabaseMetaData.SYSTEM_CATALOG_NAME_BYTES, env.getConfiguration()));
                 Get get = new Get(ptableKey);
                 get.addColumn(PhoenixDatabaseMetaData.TABLE_FAMILY_BYTES, PhoenixDatabaseMetaData.GUIDE_POSTS_WIDTH_BYTES);

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/schema/stats/StatisticsWriter.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/schema/stats/StatisticsWriter.java b/phoenix-core/src/main/java/org/apache/phoenix/schema/stats/StatisticsWriter.java
index 04ad575..459a3a9 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/schema/stats/StatisticsWriter.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/schema/stats/StatisticsWriter.java
@@ -80,7 +80,7 @@ public class StatisticsWriter implements Closeable {
         if (clientTimeStamp == HConstants.LATEST_TIMESTAMP) {
             clientTimeStamp = EnvironmentEdgeManager.currentTimeMillis();
         }
-        Table statsWriterTable = env.getTable(
+        Table statsWriterTable = env.getConnection().getTable(
                 SchemaUtil.getPhysicalTableName(PhoenixDatabaseMetaData.SYSTEM_STATS_NAME_BYTES, env.getConfiguration()));
         Table statsReaderTable = ServerUtil.getHTableForCoprocessorScan(env, statsWriterTable);
         StatisticsWriter statsTable = new StatisticsWriter(statsReaderTable, statsWriterTable, tableName,

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/transaction/PhoenixTransactionalTable.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/transaction/PhoenixTransactionalTable.java b/phoenix-core/src/main/java/org/apache/phoenix/transaction/PhoenixTransactionalTable.java
index ef3a8fc..aced376 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/transaction/PhoenixTransactionalTable.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/transaction/PhoenixTransactionalTable.java
@@ -18,7 +18,6 @@
 package org.apache.phoenix.transaction;
 
 import org.apache.hadoop.hbase.client.Get;
-import org.apache.hadoop.hbase.client.HTable;
 import org.apache.hadoop.hbase.client.Put;
 import org.apache.hadoop.hbase.client.Delete;
 import org.apache.hadoop.hbase.client.Scan;

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/phoenix-core/src/main/java/org/apache/phoenix/util/IndexUtil.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/util/IndexUtil.java b/phoenix-core/src/main/java/org/apache/phoenix/util/IndexUtil.java
index 65bff14..36fa011 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/util/IndexUtil.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/util/IndexUtil.java
@@ -536,7 +536,7 @@ public class IndexUtil {
                             environment.getRegion().getTableDesc().getTableName().getNameAsString()));
                 Table table = null;
                 try {
-                    table = environment.getTable(dataTable);
+                    table = environment.getConnection().getTable(dataTable);
                     joinResult = table.get(get);
                 } finally {
                     if (table != null) table.close();

http://git-wip-us.apache.org/repos/asf/phoenix/blob/754201cf/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 1d7678a..780d420 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
@@ -185,7 +185,7 @@ public class ServerUtil {
     
     public static Table getHTableForCoprocessorScan (RegionCoprocessorEnvironment env, TableName tableName) throws IOException {
         if (coprocessorScanWorks(env)) {
-            return env.getTable(tableName);
+            return env.getConnection().getTable(tableName);
         }
         return getTableFromSingletonPool(env, tableName);
     }