You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by gi...@apache.org on 2019/03/27 14:54:46 UTC

[hbase-site] branch asf-site updated: Published site at caa9650a703d7585c66a1b3e3b8501a61370f74f.

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

git-site-role pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/hbase-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 55d0888  Published site at caa9650a703d7585c66a1b3e3b8501a61370f74f.
55d0888 is described below

commit 55d088897ea9cf6b07eafb2770afd84801fd7d45
Author: jenkins <bu...@apache.org>
AuthorDate: Wed Mar 27 14:54:13 2019 +0000

    Published site at caa9650a703d7585c66a1b3e3b8501a61370f74f.
---
 acid-semantics.html                                |    2 +-
 apache_hbase_reference_guide.pdf                   |    4 +-
 apidocs/deprecated-list.html                       |  175 +-
 apidocs/index-all.html                             |   14 +-
 .../apache/hadoop/hbase/class-use/TableName.html   |   65 +-
 apidocs/org/apache/hadoop/hbase/client/Admin.html  |  576 +-
 .../org/apache/hadoop/hbase/client/AsyncAdmin.html |  435 +-
 .../org/apache/hadoop/hbase/client/Admin.html      | 3985 +++++------
 .../org/apache/hadoop/hbase/client/AsyncAdmin.html | 2784 ++++----
 book.html                                          |    2 +-
 bulk-loads.html                                    |    2 +-
 checkstyle-aggregate.html                          | 5944 ++++++++--------
 checkstyle.rss                                     |   34 +-
 coc.html                                           |    2 +-
 dependencies.html                                  |    2 +-
 dependency-convergence.html                        |    2 +-
 dependency-info.html                               |    2 +-
 dependency-management.html                         |    2 +-
 devapidocs/allclasses-frame.html                   |    2 +
 devapidocs/allclasses-noframe.html                 |    2 +
 devapidocs/constant-values.html                    |    4 +-
 devapidocs/deprecated-list.html                    |  110 +-
 devapidocs/index-all.html                          |  148 +-
 .../apache/hadoop/hbase/backup/package-tree.html   |    4 +-
 .../apache/hadoop/hbase/class-use/TableName.html   |  440 +-
 .../org/apache/hadoop/hbase/client/Admin.html      |  576 +-
 .../org/apache/hadoop/hbase/client/AsyncAdmin.html |  435 +-
 .../hadoop/hbase/client/AsyncHBaseAdmin.html       |  387 +-
 ...onnectionImplementation.MasterServiceState.html |   18 +-
 ...ctionImplementation.MasterServiceStubMaker.html |   10 +-
 ...ementation.ServerErrorTracker.ServerErrors.html |   10 +-
 ...onnectionImplementation.ServerErrorTracker.html |   20 +-
 .../hbase/client/ConnectionImplementation.html     |  240 +-
 .../client/HBaseAdmin.AbortProcedureFuture.html    |    8 +-
 .../client/HBaseAdmin.AddColumnFamilyFuture.html   |    6 +-
 .../hbase/client/HBaseAdmin.CreateTableFuture.html |   14 +-
 .../HBaseAdmin.DeleteColumnFamilyFuture.html       |    6 +-
 .../hbase/client/HBaseAdmin.DeleteTableFuture.html |   10 +-
 .../client/HBaseAdmin.DisableTableFuture.html      |    8 +-
 .../hbase/client/HBaseAdmin.EnableTableFuture.html |    8 +-
 .../client/HBaseAdmin.MergeTableRegionsFuture.html |    8 +-
 .../HBaseAdmin.ModifyColumnFamilyFuture.html       |    6 +-
 .../hbase/client/HBaseAdmin.ModifyTableFuture.html |    8 +-
 .../hbase/client/HBaseAdmin.NamespaceFuture.html   |   12 +-
 ...Admin.ProcedureFuture.WaitForStateCallable.html |    8 +-
 .../hbase/client/HBaseAdmin.ProcedureFuture.html   |   48 +-
 .../hbase/client/HBaseAdmin.ReplicationFuture.html |   10 +-
 .../client/HBaseAdmin.RestoreSnapshotFuture.html   |    8 +-
 .../client/HBaseAdmin.SplitTableRegionFuture.html  |    8 +-
 ...dmin.TableFuture.TableWaitForStateCallable.html |    8 +-
 .../hbase/client/HBaseAdmin.TableFuture.html       |   28 +-
 .../client/HBaseAdmin.TruncateTableFuture.html     |   10 +-
 .../org/apache/hadoop/hbase/client/HBaseAdmin.html |  581 +-
 .../hbase/client/MasterKeepAliveConnection.html    |    2 +-
 ...seAdmin.AddColumnFamilyProcedureBiConsumer.html |    6 +-
 .../client/RawAsyncHBaseAdmin.AdminRpcCall.html    |    4 +-
 .../hbase/client/RawAsyncHBaseAdmin.Converter.html |    4 +-
 ...seAdmin.CreateNamespaceProcedureBiConsumer.html |    6 +-
 ...cHBaseAdmin.CreateTableProcedureBiConsumer.html |    6 +-
 ...dmin.DeleteColumnFamilyProcedureBiConsumer.html |    6 +-
 ...seAdmin.DeleteNamespaceProcedureBiConsumer.html |    6 +-
 ...cHBaseAdmin.DeleteTableProcedureBiConsumer.html |    8 +-
 ...HBaseAdmin.DisableTableProcedureBiConsumer.html |    6 +-
 ...cHBaseAdmin.EnableTableProcedureBiConsumer.html |    6 +-
 .../client/RawAsyncHBaseAdmin.MasterRpcCall.html   |    4 +-
 ...eAdmin.MergeTableRegionProcedureBiConsumer.html |    6 +-
 ...dmin.ModifyColumnFamilyProcedureBiConsumer.html |    6 +-
 ...seAdmin.ModifyNamespaceProcedureBiConsumer.html |    6 +-
 ...cHBaseAdmin.ModifyTableProcedureBiConsumer.html |    6 +-
 ...yncHBaseAdmin.NamespaceProcedureBiConsumer.html |   14 +-
 .../RawAsyncHBaseAdmin.ProcedureBiConsumer.html    |   10 +-
 ...cHBaseAdmin.ReplicationProcedureBiConsumer.html |   14 +-
 ...eAdmin.SplitTableRegionProcedureBiConsumer.html |    6 +-
 .../client/RawAsyncHBaseAdmin.TableOperator.html   |    4 +-
 ...awAsyncHBaseAdmin.TableProcedureBiConsumer.html |   14 +-
 ...BaseAdmin.TruncateTableProcedureBiConsumer.html |    6 +-
 .../hadoop/hbase/client/RawAsyncHBaseAdmin.html    |  513 +-
 .../hbase/client/ShortCircuitMasterConnection.html |  282 +-
 .../apache/hadoop/hbase/client/package-tree.html   |   22 +-
 .../hadoop/hbase/coprocessor/MasterObserver.html   |  338 +-
 .../class-use/MasterCoprocessorEnvironment.html    |  255 +-
 .../coprocessor/class-use/ObserverContext.html     |  381 +-
 .../example/ExampleMasterObserverWithMetrics.html  |    2 +-
 .../hadoop/hbase/coprocessor/package-tree.html     |    2 +-
 .../apache/hadoop/hbase/executor/package-tree.html |    2 +-
 .../apache/hadoop/hbase/filter/package-tree.html   |    8 +-
 .../org/apache/hadoop/hbase/http/package-tree.html |    2 +-
 .../apache/hadoop/hbase/io/hfile/package-tree.html |    6 +-
 .../org/apache/hadoop/hbase/ipc/package-tree.html  |    2 +-
 .../hadoop/hbase/mapreduce/package-tree.html       |    4 +-
 .../hadoop/hbase/master/MasterCoprocessorHost.html |  304 +-
 .../MasterRpcServices.BalanceSwitchMode.html       |    6 +-
 .../hadoop/hbase/master/MasterRpcServices.html     |  386 +-
 .../hbase/master/assignment/package-tree.html      |    2 +-
 .../apache/hadoop/hbase/master/package-tree.html   |    4 +-
 .../hbase/master/procedure/package-tree.html       |    4 +-
 .../org/apache/hadoop/hbase/package-tree.html      |   16 +-
 .../hadoop/hbase/procedure2/package-tree.html      |    6 +-
 .../hadoop/hbase/quotas/MasterQuotasObserver.html  |    2 +-
 .../apache/hadoop/hbase/quotas/package-tree.html   |    6 +-
 .../hadoop/hbase/regionserver/package-tree.html    |   16 +-
 .../hbase/regionserver/wal/package-tree.html       |    2 +-
 .../replication/regionserver/package-tree.html     |    2 +-
 .../hadoop/hbase/rsgroup/RSGroupAdminEndpoint.html |    2 +-
 .../hbase/security/access/AccessControlClient.html |   12 +-
 .../hbase/security/access/AccessControlLists.html  |   82 +-
 .../hbase/security/access/AccessControlUtil.html   |  101 +-
 .../hbase/security/access/AccessController.html    |  289 +-
 .../access/CoprocessorWhitelistMasterObserver.html |    6 +-
 .../access/GetUserPermissionsRequest.Builder.html  |  434 ++
 .../security/access/GetUserPermissionsRequest.html |  509 ++
 .../hbase/security/access/GlobalPermission.html    |    4 +-
 .../security/access/ShadedAccessControlUtil.html   |   84 +-
 .../GetUserPermissionsRequest.Builder.html         |  193 +
 .../class-use/GetUserPermissionsRequest.html       |  244 +
 .../security/access/class-use/UserPermission.html  |   87 +-
 .../hbase/security/access/package-frame.html       |    2 +
 .../hbase/security/access/package-summary.html     |   11 +
 .../hadoop/hbase/security/access/package-tree.html |    6 +-
 .../hadoop/hbase/security/access/package-use.html  |   23 +-
 .../hadoop/hbase/security/class-use/User.html      |   27 +-
 .../apache/hadoop/hbase/security/package-tree.html |    2 +-
 .../security/visibility/VisibilityController.html  |    2 +-
 .../apache/hadoop/hbase/thrift/package-tree.html   |    2 +-
 .../hadoop/hbase/thrift2/client/ThriftAdmin.html   |  530 +-
 .../org/apache/hadoop/hbase/util/package-tree.html |    8 +-
 devapidocs/overview-tree.html                      |    2 +
 .../src-html/org/apache/hadoop/hbase/Version.html  |    4 +-
 .../org/apache/hadoop/hbase/client/Admin.html      | 3985 +++++------
 .../org/apache/hadoop/hbase/client/AsyncAdmin.html | 2784 ++++----
 .../hadoop/hbase/client/AsyncHBaseAdmin.html       | 1544 ++--
 ...onnectionImplementation.MasterServiceState.html | 3936 +++++-----
 ...ctionImplementation.MasterServiceStubMaker.html | 3936 +++++-----
 ...ementation.ServerErrorTracker.ServerErrors.html | 3936 +++++-----
 ...onnectionImplementation.ServerErrorTracker.html | 3936 +++++-----
 .../hbase/client/ConnectionImplementation.html     | 3936 +++++-----
 .../client/HBaseAdmin.AbortProcedureFuture.html    | 7528 ++++++++++----------
 .../client/HBaseAdmin.AddColumnFamilyFuture.html   | 7528 ++++++++++----------
 .../hbase/client/HBaseAdmin.CreateTableFuture.html | 7528 ++++++++++----------
 .../HBaseAdmin.DeleteColumnFamilyFuture.html       | 7528 ++++++++++----------
 .../hbase/client/HBaseAdmin.DeleteTableFuture.html | 7528 ++++++++++----------
 .../client/HBaseAdmin.DisableTableFuture.html      | 7528 ++++++++++----------
 .../hbase/client/HBaseAdmin.EnableTableFuture.html | 7528 ++++++++++----------
 .../client/HBaseAdmin.MergeTableRegionsFuture.html | 7528 ++++++++++----------
 .../HBaseAdmin.ModifyColumnFamilyFuture.html       | 7528 ++++++++++----------
 .../hbase/client/HBaseAdmin.ModifyTableFuture.html | 7528 ++++++++++----------
 .../hbase/client/HBaseAdmin.NamespaceFuture.html   | 7528 ++++++++++----------
 ...Admin.ProcedureFuture.WaitForStateCallable.html | 7528 ++++++++++----------
 .../hbase/client/HBaseAdmin.ProcedureFuture.html   | 7528 ++++++++++----------
 .../hbase/client/HBaseAdmin.ReplicationFuture.html | 7528 ++++++++++----------
 .../client/HBaseAdmin.RestoreSnapshotFuture.html   | 7528 ++++++++++----------
 .../client/HBaseAdmin.SplitTableRegionFuture.html  | 7528 ++++++++++----------
 ...dmin.TableFuture.TableWaitForStateCallable.html | 7528 ++++++++++----------
 .../hbase/client/HBaseAdmin.TableFuture.html       | 7528 ++++++++++----------
 .../client/HBaseAdmin.TruncateTableFuture.html     | 7528 ++++++++++----------
 .../org/apache/hadoop/hbase/client/HBaseAdmin.html | 7528 ++++++++++----------
 ...seAdmin.AddColumnFamilyProcedureBiConsumer.html | 7405 +++++++++----------
 .../client/RawAsyncHBaseAdmin.AdminRpcCall.html    | 7405 +++++++++----------
 .../hbase/client/RawAsyncHBaseAdmin.Converter.html | 7405 +++++++++----------
 ...seAdmin.CreateNamespaceProcedureBiConsumer.html | 7405 +++++++++----------
 ...cHBaseAdmin.CreateTableProcedureBiConsumer.html | 7405 +++++++++----------
 ...dmin.DeleteColumnFamilyProcedureBiConsumer.html | 7405 +++++++++----------
 ...seAdmin.DeleteNamespaceProcedureBiConsumer.html | 7405 +++++++++----------
 ...cHBaseAdmin.DeleteTableProcedureBiConsumer.html | 7405 +++++++++----------
 ...HBaseAdmin.DisableTableProcedureBiConsumer.html | 7405 +++++++++----------
 ...cHBaseAdmin.EnableTableProcedureBiConsumer.html | 7405 +++++++++----------
 .../client/RawAsyncHBaseAdmin.MasterRpcCall.html   | 7405 +++++++++----------
 ...eAdmin.MergeTableRegionProcedureBiConsumer.html | 7405 +++++++++----------
 ...dmin.ModifyColumnFamilyProcedureBiConsumer.html | 7405 +++++++++----------
 ...seAdmin.ModifyNamespaceProcedureBiConsumer.html | 7405 +++++++++----------
 ...cHBaseAdmin.ModifyTableProcedureBiConsumer.html | 7405 +++++++++----------
 ...yncHBaseAdmin.NamespaceProcedureBiConsumer.html | 7405 +++++++++----------
 .../RawAsyncHBaseAdmin.ProcedureBiConsumer.html    | 7405 +++++++++----------
 ...cHBaseAdmin.ReplicationProcedureBiConsumer.html | 7405 +++++++++----------
 ...eAdmin.SplitTableRegionProcedureBiConsumer.html | 7405 +++++++++----------
 .../client/RawAsyncHBaseAdmin.TableOperator.html   | 7405 +++++++++----------
 ...awAsyncHBaseAdmin.TableProcedureBiConsumer.html | 7405 +++++++++----------
 ...BaseAdmin.TruncateTableProcedureBiConsumer.html | 7405 +++++++++----------
 .../hadoop/hbase/client/RawAsyncHBaseAdmin.html    | 7405 +++++++++----------
 .../hbase/client/ShortCircuitMasterConnection.html | 1342 ++--
 .../hadoop/hbase/coprocessor/MasterObserver.html   |   32 +-
 .../MasterCoprocessorHost.MasterEnvironment.html   |   22 +-
 ...rHost.MasterEnvironmentForCoreCoprocessors.html |   22 +-
 ...terCoprocessorHost.MasterObserverOperation.html |   22 +-
 .../hadoop/hbase/master/MasterCoprocessorHost.html |   22 +-
 .../MasterRpcServices.BalanceSwitchMode.html       | 5013 ++++++-------
 .../hadoop/hbase/master/MasterRpcServices.html     | 5013 ++++++-------
 ...ochasticLoadBalancer.CPRequestCostFunction.html |    2 +-
 .../StochasticLoadBalancer.CandidateGenerator.html |    2 +-
 ...dBalancer.CostFromRegionLoadAsRateFunction.html |    2 +-
 ...ticLoadBalancer.CostFromRegionLoadFunction.html |    2 +-
 .../StochasticLoadBalancer.CostFunction.html       |    2 +-
 ...chasticLoadBalancer.LoadCandidateGenerator.html |    2 +-
 ...adBalancer.LocalityBasedCandidateGenerator.html |    2 +-
 ...sticLoadBalancer.LocalityBasedCostFunction.html |    2 +-
 ...asticLoadBalancer.MemStoreSizeCostFunction.html |    2 +-
 .../StochasticLoadBalancer.MoveCostFunction.html   |    2 +-
 ...alancer.PrimaryRegionCountSkewCostFunction.html |    2 +-
 ...asticLoadBalancer.RackLocalityCostFunction.html |    2 +-
 ...asticLoadBalancer.RandomCandidateGenerator.html |    2 +-
 ...hasticLoadBalancer.ReadRequestCostFunction.html |    2 +-
 ...icLoadBalancer.RegionCountSkewCostFunction.html |    2 +-
 ...adBalancer.RegionReplicaCandidateGenerator.html |    2 +-
 ...LoadBalancer.RegionReplicaHostCostFunction.html |    2 +-
 ...lancer.RegionReplicaRackCandidateGenerator.html |    2 +-
 ...LoadBalancer.RegionReplicaRackCostFunction.html |    2 +-
 ...ticLoadBalancer.ServerLocalityCostFunction.html |    2 +-
 ...ochasticLoadBalancer.StoreFileCostFunction.html |    2 +-
 ...ochasticLoadBalancer.TableSkewCostFunction.html |    2 +-
 ...asticLoadBalancer.WriteRequestCostFunction.html |    2 +-
 .../master/balancer/StochasticLoadBalancer.html    |    2 +-
 .../hbase/security/access/AccessControlClient.html |  335 +-
 .../hbase/security/access/AccessControlLists.html  |  739 +-
 .../hbase/security/access/AccessControlUtil.html   |  518 +-
 .../security/access/AccessController.OpType.html   | 1036 ++-
 .../hbase/security/access/AccessController.html    | 1036 ++-
 .../access/GetUserPermissionsRequest.Builder.html  |  208 +
 .../security/access/GetUserPermissionsRequest.html |  208 +
 .../security/access/ShadedAccessControlUtil.html   |  542 +-
 .../hadoop/hbase/thrift2/client/ThriftAdmin.html   | 2103 +++---
 downloads.html                                     |   19 +-
 export_control.html                                |    2 +-
 index.html                                         |    2 +-
 issue-management.html                              |    2 +-
 licenses.html                                      |    2 +-
 mailing-lists.html                                 |    2 +-
 metrics.html                                       |    2 +-
 old_news.html                                      |    2 +-
 plugin-management.html                             |    2 +-
 plugins.html                                       |    2 +-
 poweredbyhbase.html                                |    2 +-
 project-info.html                                  |    2 +-
 project-reports.html                               |    2 +-
 pseudo-distributed.html                            |    2 +-
 replication.html                                   |    2 +-
 resources.html                                     |    2 +-
 scm.html                                           |    2 +-
 sponsors.html                                      |    2 +-
 summary.html                                       |    2 +-
 supportingprojects.html                            |    2 +-
 team.html                                          |    2 +-
 testdevapidocs/allclasses-frame.html               |    1 +
 testdevapidocs/allclasses-noframe.html             |    1 +
 testdevapidocs/index-all.html                      |   16 +-
 .../hbase/TestClientClusterMetrics.MyObserver.html |    2 +-
 .../hbase/TestClientClusterStatus.MyObserver.html  |    2 +-
 .../TestJMXConnectorServer.MyAccessController.html |    4 +-
 ...pDeleteWithFailures.MasterSnapshotObserver.html |    2 +-
 .../hadoop/hbase/class-use/HBaseClassTestRule.html |  148 +-
 .../hbase/client/TestAppendFromClientSide.html     |    4 +-
 ...de.html => TestAsyncAccessControlAdminApi.html} |  169 +-
 .../hadoop/hbase/client/TestAsyncAdminBase.html    |    6 +-
 ...syncAdminBuilder.TestMaxRetriesCoprocessor.html |    2 +-
 ...minBuilder.TestOperationTimeoutCoprocessor.html |    2 +-
 ...syncAdminBuilder.TestRpcTimeoutCoprocessor.html |    2 +-
 .../hbase/client/TestAsyncRegionAdminApi.html      |   66 +-
 .../hbase/client/TestAsyncTableAdminApi2.html      |   24 +-
 .../client/TestEnableTable.MasterSyncObserver.html |    2 +-
 .../client/TestMultiParallel.MyMasterObserver.html |    2 +-
 .../class-use/TestAsyncAccessControlAdminApi.html  |  125 +
 .../hbase/client/class-use/TestAsyncAdminBase.html |   32 +-
 .../apache/hadoop/hbase/client/package-frame.html  |    1 +
 .../hadoop/hbase/client/package-summary.html       |  568 +-
 .../apache/hadoop/hbase/client/package-tree.html   |    1 +
 .../TestClassLoading.TestMasterCoprocessor.html    |    2 +-
 ...estCoprocessorMetrics.CustomMasterObserver.html |    2 +-
 ...ssorExceptionWithAbort.BuggyMasterObserver.html |    2 +-
 ...sorExceptionWithRemove.BuggyMasterObserver.html |    2 +-
 .../TestMasterObserver.CPMasterObserver.html       |    2 +-
 ...Schema.OnlyOneVersionAllowedMasterObserver.html |    2 +-
 ...erCoprocessorServices.MockAccessController.html |    2 +-
 ...processorServices.MockVisibilityController.html |    2 +-
 ...AbortWhileMergingTable.MergeRegionObserver.html |    2 +-
 ...terObserverPostCalls.MasterObserverForTest.html |    2 +-
 .../TestNamespaceAuditor.CPMasterObserver.html     |    2 +-
 .../TestNamespaceAuditor.MasterSyncObserver.html   |    2 +-
 .../org/apache/hadoop/hbase/package-tree.html      |   10 +-
 .../TestFailedProcCleanup.CreateFailObserver.html  |    2 +-
 ...ailedProcCleanup.CreateFailObserverHandler.html |    2 +-
 .../hadoop/hbase/procedure/package-tree.html       |    8 +-
 .../hadoop/hbase/procedure2/package-tree.html      |    4 +-
 ...geTransactionOnCluster.MyMasterRpcServices.html |    2 +-
 ...actionOnCluster.FailingSplitMasterObserver.html |    2 +-
 ...itTransactionOnCluster.MyMasterRpcServices.html |    2 +-
 .../hadoop/hbase/regionserver/package-tree.html    |    4 +-
 .../rsgroup/TestRSGroupsBase.CPMasterObserver.html |    2 +-
 .../access/SecureTestUtil.AccessTestAction.html    |    2 +-
 .../access/SecureTestUtil.MasterSyncObserver.html  |   16 +-
 .../hbase/security/access/SecureTestUtil.html      |   84 +-
 ...ssController.MyShellBasedUnixGroupsMapping.html |    6 +-
 .../TestAccessController.PingCoprocessor.html      |   20 +-
 .../security/access/TestAccessController.html      |  114 +-
 .../TestAccessController2.MyAccessController.html  |    4 +-
 ...stAccessController3.FaultyAccessController.html |    4 +-
 .../security/access/TestNamespaceCommands.html     |    2 +-
 ...stSnapshotClientRetries.MasterSyncObserver.html |    2 +-
 .../org/apache/hadoop/hbase/test/package-tree.html |    4 +-
 .../BaseTestHBaseFsck.MasterSyncCoprocessor.html   |    2 +-
 .../org/apache/hadoop/hbase/wal/package-tree.html  |    4 +-
 testdevapidocs/overview-tree.html                  |    1 +
 .../client/TestAsyncAccessControlAdminApi.html     |  146 +
 .../hbase/client/TestAsyncRegionAdminApi.html      |  877 +--
 .../hbase/client/TestAsyncTableAdminApi.html       |    6 +-
 .../hbase/client/TestAsyncTableAdminApi2.html      |  164 +-
 .../access/SecureTestUtil.AccessTestAction.html    | 1520 ++--
 .../access/SecureTestUtil.MasterSyncObserver.html  | 1520 ++--
 .../hbase/security/access/SecureTestUtil.html      | 1520 ++--
 ...tAccessController.BulkLoadAccessTestAction.html | 4960 +++++++------
 .../TestAccessController.BulkLoadHelper.html       | 4960 +++++++------
 ...ssController.MyShellBasedUnixGroupsMapping.html | 4960 +++++++------
 .../TestAccessController.PingCoprocessor.html      | 4960 +++++++------
 ...TestAccessController.TestTableDDLProcedure.html | 4960 +++++++------
 .../security/access/TestAccessController.html      | 4960 +++++++------
 .../security/access/TestNamespaceCommands.html     |  239 +-
 314 files changed, 215284 insertions(+), 211803 deletions(-)

diff --git a/acid-semantics.html b/acid-semantics.html
index 6d99a84..1cb9fff 100644
--- a/acid-semantics.html
+++ b/acid-semantics.html
@@ -457,7 +457,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2019
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2019-03-26</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2019-03-27</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/apache_hbase_reference_guide.pdf b/apache_hbase_reference_guide.pdf
index 81a1d73..0077240 100644
--- a/apache_hbase_reference_guide.pdf
+++ b/apache_hbase_reference_guide.pdf
@@ -5,8 +5,8 @@
 /Author (Apache HBase Team)
 /Creator (Asciidoctor PDF 1.5.0.alpha.15, based on Prawn 2.2.2)
 /Producer (Apache HBase Team)
-/ModDate (D:20190326150510+00'00')
-/CreationDate (D:20190326152616+00'00')
+/ModDate (D:20190327142936+00'00')
+/CreationDate (D:20190327145030+00'00')
 >>
 endobj
 2 0 obj
diff --git a/apidocs/deprecated-list.html b/apidocs/deprecated-list.html
index 3c87a0e..23924c5 100644
--- a/apidocs/deprecated-list.html
+++ b/apidocs/deprecated-list.html
@@ -1642,323 +1642,318 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-byte:A:A-">org.apache.hadoop.hbase.client.AsyncAdmin.isTableAvailable(TableName, byte[][])</a>
-<div class="block"><span class="deprecationComment">Since 2.2.0. Will be removed in 3.0.0. Use <a href="org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-"><code>AsyncAdmin.isTableAvailable(TableName)</code></a></span></div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/replication/ReplicationAdmin.html#listPeerConfigs--">org.apache.hadoop.hbase.client.replication.ReplicationAdmin.listPeerConfigs()</a>
 <div class="block"><span class="deprecationComment">use <a href="org/apache/hadoop/hbase/client/Admin.html#listReplicationPeers--"><code>Admin.listReplicationPeers()</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/replication/ReplicationAdmin.html#listReplicated--">org.apache.hadoop.hbase.client.replication.ReplicationAdmin.listReplicated()</a>
 <div class="block"><span class="deprecationComment">use <a href="org/apache/hadoop/hbase/client/Admin.html#listReplicatedTableCFs--"><code>Admin.listReplicatedTableCFs()</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#matchingColumn-org.apache.hadoop.hbase.Cell-byte:A-int-int-byte:A-int-int-">org.apache.hadoop.hbase.CellUtil.matchingColumn(Cell, byte[], int, int, byte[], int, int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#matchingFamily-org.apache.hadoop.hbase.Cell-byte:A-int-int-">org.apache.hadoop.hbase.CellUtil.matchingFamily(Cell, byte[], int, int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#matchingQualifier-org.apache.hadoop.hbase.Cell-byte:A-int-int-">org.apache.hadoop.hbase.CellUtil.matchingQualifier(Cell, byte[], int, int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#matchingRow-org.apache.hadoop.hbase.Cell-byte:A-">org.apache.hadoop.hbase.CellUtil.matchingRow(Cell, byte[])</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.
              Instead use <a href="org/apache/hadoop/hbase/CellUtil.html#matchingRows-org.apache.hadoop.hbase.Cell-byte:A-"><code>CellUtil.matchingRows(Cell, byte[])</code></a></span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#matchingRow-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">org.apache.hadoop.hbase.CellUtil.matchingRow(Cell, Cell)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.
              Instead use <a href="org/apache/hadoop/hbase/CellUtil.html#matchingRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-"><code>CellUtil.matchingRows(Cell, Cell)</code></a></span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#matchingType-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">org.apache.hadoop.hbase.CellUtil.matchingType(Cell, Cell)</a>
 <div class="block"><span class="deprecationComment">As of HBase-2.0. Will be removed in HBase-3.0</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/ServerLoad.html#obtainServerLoadPB--">org.apache.hadoop.hbase.ServerLoad.obtainServerLoadPB()</a>
 <div class="block"><span class="deprecationComment">DONT use this pb object since the byte array backed may be modified in rpc layer</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#overlappingKeys-byte:A-byte:A-byte:A-byte:A-">org.apache.hadoop.hbase.CellUtil.overlappingKeys(byte[], byte[], byte[], byte[])</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HRegionInfo.html#parseDelimitedFrom-byte:A-int-int-">org.apache.hadoop.hbase.HRegionInfo.parseDelimitedFrom(byte[], int, int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0
              Use <a href="org/apache/hadoop/hbase/client/RegionInfo.html#parseDelimitedFrom-byte:A-int-int-"><code>RegionInfo.parseDelimitedFrom(byte[], int, int)</code></a>.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HRegionInfo.html#parseFrom-byte:A-">org.apache.hadoop.hbase.HRegionInfo.parseFrom(byte[])</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0
              Use <a href="org/apache/hadoop/hbase/client/RegionInfo.html#parseFrom-byte:A-"><code>RegionInfo.parseFrom(byte[])</code></a>.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HRegionInfo.html#parseFrom-byte:A-int-int-">org.apache.hadoop.hbase.HRegionInfo.parseFrom(byte[], int, int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0
              Use <a href="org/apache/hadoop/hbase/client/RegionInfo.html#parseFrom-byte:A-int-int-"><code>RegionInfo.parseFrom(byte[], int, int)</code></a>.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HRegionInfo.html#parseFrom-java.io.DataInputStream-">org.apache.hadoop.hbase.HRegionInfo.parseFrom(DataInputStream)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0
              Use <a href="org/apache/hadoop/hbase/client/RegionInfo.html#parseFrom-java.io.DataInputStream-"><code>RegionInfo.parseFrom(DataInputStream)</code></a>.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HRegionInfo.html#parseFromOrNull-byte:A-">org.apache.hadoop.hbase.HRegionInfo.parseFromOrNull(byte[])</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0
              Use <a href="org/apache/hadoop/hbase/client/RegionInfo.html#parseFromOrNull-byte:A-"><code>RegionInfo.parseFromOrNull(byte[])</code></a>.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HRegionInfo.html#parseFromOrNull-byte:A-int-int-">org.apache.hadoop.hbase.HRegionInfo.parseFromOrNull(byte[], int, int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0
              Use <a href="org/apache/hadoop/hbase/client/RegionInfo.html#parseFromOrNull-byte:A-int-int-"><code>RegionInfo.parseFromOrNull(byte[], int, int)</code></a>.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/ServerName.html#parseHostname-java.lang.String-">org.apache.hadoop.hbase.ServerName.parseHostname(String)</a>
 <div class="block"><span class="deprecationComment">Since 2.0. Use <a href="org/apache/hadoop/hbase/ServerName.html#valueOf-java.lang.String-"><code>ServerName.valueOf(String)</code></a></span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/ServerName.html#parsePort-java.lang.String-">org.apache.hadoop.hbase.ServerName.parsePort(String)</a>
 <div class="block"><span class="deprecationComment">Since 2.0. Use <a href="org/apache/hadoop/hbase/ServerName.html#valueOf-java.lang.String-"><code>ServerName.valueOf(String)</code></a></span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HRegionInfo.html#parseRegionName-byte:A-">org.apache.hadoop.hbase.HRegionInfo.parseRegionName(byte[])</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0
              Use <a href="org/apache/hadoop/hbase/client/RegionInfo.html#parseRegionName-byte:A-"><code>RegionInfo.parseRegionName(byte[])</code></a>.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/ServerName.html#parseStartcode-java.lang.String-">org.apache.hadoop.hbase.ServerName.parseStartcode(String)</a>
 <div class="block"><span class="deprecationComment">Since 2.0. Use <a href="org/apache/hadoop/hbase/ServerName.html#valueOf-java.lang.String-"><code>ServerName.valueOf(String)</code></a></span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/replication/ReplicationAdmin.html#parseTableCFsFromConfig-java.lang.String-">org.apache.hadoop.hbase.client.replication.ReplicationAdmin.parseTableCFsFromConfig(String)</a>
 <div class="block"><span class="deprecationComment">as release of 2.0.0, and it will be removed in 3.0.0</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HRegionInfo.html#prettyPrint-java.lang.String-">org.apache.hadoop.hbase.HRegionInfo.prettyPrint(String)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0
              Use <a href="org/apache/hadoop/hbase/client/RegionInfo.html#prettyPrint-java.lang.String-"><code>RegionInfo.prettyPrint(String)</code></a>.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/util/Bytes.html#putIntUnsafe-byte:A-int-int-">org.apache.hadoop.hbase.util.Bytes.putIntUnsafe(byte[], int, int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/util/Bytes.html#putLongUnsafe-byte:A-int-long-">org.apache.hadoop.hbase.util.Bytes.putLongUnsafe(byte[], int, long)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/util/Bytes.html#putShortUnsafe-byte:A-int-short-">org.apache.hadoop.hbase.util.Bytes.putShortUnsafe(byte[], int, short)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/util/Bytes.html#readVLong-byte:A-int-">org.apache.hadoop.hbase.util.Bytes.readVLong(byte[], int)</a>
 <div class="block"><span class="deprecationComment">Use <a href="org/apache/hadoop/hbase/util/Bytes.html#readAsVLong-byte:A-int-"><code>Bytes.readAsVLong(byte[],int)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/replication/ReplicationAdmin.html#removePeer-java.lang.String-">org.apache.hadoop.hbase.client.replication.ReplicationAdmin.removePeer(String)</a>
 <div class="block"><span class="deprecationComment">use <a href="org/apache/hadoop/hbase/client/Admin.html#removeReplicationPeer-java.lang.String-"><code>Admin.removeReplicationPeer(String)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/replication/ReplicationAdmin.html#removePeerTableCFs-java.lang.String-java.util.Map-">org.apache.hadoop.hbase.client.replication.ReplicationAdmin.removePeerTableCFs(String, Map&lt;TableName, ? extends Collection&lt;String&gt;&gt;)</a></td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/replication/ReplicationAdmin.html#removePeerTableCFs-java.lang.String-java.lang.String-">org.apache.hadoop.hbase.client.replication.ReplicationAdmin.removePeerTableCFs(String, String)</a>
 <div class="block"><span class="deprecationComment">as release of 2.0.0, and it will be removed in 3.0.0,
  use <a href="org/apache/hadoop/hbase/client/replication/ReplicationAdmin.html#removePeerTableCFs-java.lang.String-java.util.Map-"><code>ReplicationAdmin.removePeerTableCFs(String, Map)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html#setBandwidth-long-">org.apache.hadoop.hbase.replication.ReplicationPeerConfig.setBandwidth(long)</a>
 <div class="block"><span class="deprecationComment">as release of 2.0.0, and it will be removed in 3.0.0. Use
              <a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setBandwidth-long-"><code>ReplicationPeerConfigBuilder.setBandwidth(long)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HColumnDescriptor.html#setCacheDataInL1-boolean-">org.apache.hadoop.hbase.HColumnDescriptor.setCacheDataInL1(boolean)</a>
 <div class="block"><span class="deprecationComment">Since 2.0 and will be removed in 3.0 with out any replacement. Caching data in on
              heap Cache, when there are both on heap LRU Cache and Bucket Cache will no longer
              be supported from 2.0.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Get.html#setClosestRowBefore-boolean-">org.apache.hadoop.hbase.client.Get.setClosestRowBefore(boolean)</a>
 <div class="block"><span class="deprecationComment">since 2.0.0 and will be removed in 3.0.0</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html#setClusterKey-java.lang.String-">org.apache.hadoop.hbase.replication.ReplicationPeerConfig.setClusterKey(String)</a>
 <div class="block"><span class="deprecationComment">as release of 2.0.0, and it will be removed in 3.0.0. Use
              <a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setClusterKey-java.lang.String-"><code>ReplicationPeerConfigBuilder.setClusterKey(String)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html#setExcludeNamespaces-java.util.Set-">org.apache.hadoop.hbase.replication.ReplicationPeerConfig.setExcludeNamespaces(Set&lt;String&gt;)</a>
 <div class="block"><span class="deprecationComment">as release of 2.0.0, and it will be removed in 3.0.0. Use
              <a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setExcludeNamespaces-java.util.Set-"><code>ReplicationPeerConfigBuilder.setExcludeNamespaces(Set)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html#setExcludeTableCFsMap-java.util.Map-">org.apache.hadoop.hbase.replication.ReplicationPeerConfig.setExcludeTableCFsMap(Map&lt;TableName, ? extends Collection&lt;String&gt;&gt;)</a>
 <div class="block"><span class="deprecationComment">as release of 2.0.0, and it will be removed in 3.0.0. Use
              <a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setExcludeTableCFsMap-java.util.Map-"><code>ReplicationPeerConfigBuilder.setExcludeTableCFsMap(Map)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Increment.html#setFamilyCellMap-java.util.NavigableMap-">org.apache.hadoop.hbase.client.Increment.setFamilyCellMap(NavigableMap&lt;byte[], List&lt;Cell&gt;&gt;)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.
              Use <a href="org/apache/hadoop/hbase/client/Increment.html#Increment-byte:A-long-java.util.NavigableMap-"><code>Increment.Increment(byte[], long, NavigableMap)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Put.html#setFamilyCellMap-java.util.NavigableMap-">org.apache.hadoop.hbase.client.Put.setFamilyCellMap(NavigableMap&lt;byte[], List&lt;Cell&gt;&gt;)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.
              Use <a href="org/apache/hadoop/hbase/client/Put.html#Put-byte:A-long-java.util.NavigableMap-"><code>Put.Put(byte[], long, NavigableMap)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Append.html#setFamilyCellMap-java.util.NavigableMap-">org.apache.hadoop.hbase.client.Append.setFamilyCellMap(NavigableMap&lt;byte[], List&lt;Cell&gt;&gt;)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.
              Use <a href="org/apache/hadoop/hbase/client/Append.html#Append-byte:A-long-java.util.NavigableMap-"><code>Append.Append(byte[], long, NavigableMap)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Delete.html#setFamilyCellMap-java.util.NavigableMap-">org.apache.hadoop.hbase.client.Delete.setFamilyCellMap(NavigableMap&lt;byte[], List&lt;Cell&gt;&gt;)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.
              Use <a href="org/apache/hadoop/hbase/client/Delete.html#Delete-byte:A-long-java.util.NavigableMap-"><code>Delete.Delete(byte[], long, NavigableMap)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Mutation.html#setFamilyCellMap-java.util.NavigableMap-">org.apache.hadoop.hbase.client.Mutation.setFamilyCellMap(NavigableMap&lt;byte[], List&lt;Cell&gt;&gt;)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.
              Use <a href="org/apache/hadoop/hbase/client/Mutation.html#Mutation-byte:A-long-java.util.NavigableMap-"><code>Mutation.Mutation(byte[], long, NavigableMap)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Get.html#setMaxVersions--">org.apache.hadoop.hbase.client.Get.setMaxVersions()</a>
 <div class="block"><span class="deprecationComment">It is easy to misunderstand with column family's max versions, so use
              <a href="org/apache/hadoop/hbase/client/Get.html#readAllVersions--"><code>Get.readAllVersions()</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Scan.html#setMaxVersions--">org.apache.hadoop.hbase.client.Scan.setMaxVersions()</a>
 <div class="block"><span class="deprecationComment">It is easy to misunderstand with column family's max versions, so use
              <a href="org/apache/hadoop/hbase/client/Scan.html#readAllVersions--"><code>Scan.readAllVersions()</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Get.html#setMaxVersions-int-">org.apache.hadoop.hbase.client.Get.setMaxVersions(int)</a>
 <div class="block"><span class="deprecationComment">It is easy to misunderstand with column family's max versions, so use
              <a href="org/apache/hadoop/hbase/client/Get.html#readVersions-int-"><code>Get.readVersions(int)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Scan.html#setMaxVersions-int-">org.apache.hadoop.hbase.client.Scan.setMaxVersions(int)</a>
 <div class="block"><span class="deprecationComment">It is easy to misunderstand with column family's max versions, so use
              <a href="org/apache/hadoop/hbase/client/Scan.html#readVersions-int-"><code>Scan.readVersions(int)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html#setNamespaces-java.util.Set-">org.apache.hadoop.hbase.replication.ReplicationPeerConfig.setNamespaces(Set&lt;String&gt;)</a>
 <div class="block"><span class="deprecationComment">as release of 2.0.0, and it will be removed in 3.0.0. Use
              <a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setNamespaces-java.util.Set-"><code>ReplicationPeerConfigBuilder.setNamespaces(Set)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Table.html#setOperationTimeout-int-">org.apache.hadoop.hbase.client.Table.setOperationTimeout(int)</a>
 <div class="block"><span class="deprecationComment">since 2.0.0, use <a href="org/apache/hadoop/hbase/client/TableBuilder.html#setOperationTimeout-int-"><code>TableBuilder.setOperationTimeout(int)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/rest/client/RemoteHTable.html#setOperationTimeout-int-">org.apache.hadoop.hbase.rest.client.RemoteHTable.setOperationTimeout(int)</a></td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HTableDescriptor.html#setOwner-org.apache.hadoop.hbase.security.User-">org.apache.hadoop.hbase.HTableDescriptor.setOwner(User)</a></td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#setOwner-org.apache.hadoop.hbase.security.User-">org.apache.hadoop.hbase.client.TableDescriptorBuilder.setOwner(User)</a></td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HTableDescriptor.html#setOwnerString-java.lang.String-">org.apache.hadoop.hbase.HTableDescriptor.setOwnerString(String)</a></td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#setOwnerString-java.lang.String-">org.apache.hadoop.hbase.client.TableDescriptorBuilder.setOwnerString(String)</a></td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/replication/ReplicationAdmin.html#setPeerTableCFs-java.lang.String-java.util.Map-">org.apache.hadoop.hbase.client.replication.ReplicationAdmin.setPeerTableCFs(String, Map&lt;TableName, ? extends Collection&lt;String&gt;&gt;)</a></td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Table.html#setReadRpcTimeout-int-">org.apache.hadoop.hbase.client.Table.setReadRpcTimeout(int)</a>
 <div class="block"><span class="deprecationComment">since 2.0.0, use <a href="org/apache/hadoop/hbase/client/TableBuilder.html#setReadRpcTimeout-int-"><code>TableBuilder.setReadRpcTimeout(int)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/rest/client/RemoteHTable.html#setReadRpcTimeout-int-">org.apache.hadoop.hbase.rest.client.RemoteHTable.setReadRpcTimeout(int)</a></td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HTableDescriptor.html#setRegionMemstoreReplication-boolean-">org.apache.hadoop.hbase.HTableDescriptor.setRegionMemstoreReplication(boolean)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.
              Use <a href="org/apache/hadoop/hbase/HTableDescriptor.html#setRegionMemStoreReplication-boolean-"><code>HTableDescriptor.setRegionMemStoreReplication(boolean)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html#setReplicateAllUserTables-boolean-">org.apache.hadoop.hbase.replication.ReplicationPeerConfig.setReplicateAllUserTables(boolean)</a>
 <div class="block"><span class="deprecationComment">as release of 2.0.0, and it will be removed in 3.0.0. Use
              <a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setReplicateAllUserTables-boolean-"><code>ReplicationPeerConfigBuilder.setReplicateAllUserTables(boolean)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html#setReplicationEndpointImpl-java.lang.String-">org.apache.hadoop.hbase.replication.ReplicationPeerConfig.setReplicationEndpointImpl(String)</a>
 <div class="block"><span class="deprecationComment">as release of 2.0.0, and it will be removed in 3.0.0. Use
              <a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setReplicationEndpointImpl-java.lang.String-"><code>ReplicationPeerConfigBuilder.setReplicationEndpointImpl(String)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Table.html#setRpcTimeout-int-">org.apache.hadoop.hbase.client.Table.setRpcTimeout(int)</a>
 <div class="block"><span class="deprecationComment">Use setReadRpcTimeout or setWriteRpcTimeout instead</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/rest/client/RemoteHTable.html#setRpcTimeout-int-">org.apache.hadoop.hbase.rest.client.RemoteHTable.setRpcTimeout(int)</a></td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#setSequenceId-org.apache.hadoop.hbase.Cell-long-">org.apache.hadoop.hbase.CellUtil.setSequenceId(Cell, long)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Scan.html#setSmall-boolean-">org.apache.hadoop.hbase.client.Scan.setSmall(boolean)</a>
 <div class="block"><span class="deprecationComment">since 2.0.0. Use <a href="org/apache/hadoop/hbase/client/Scan.html#setLimit-int-"><code>Scan.setLimit(int)</code></a> and <a href="org/apache/hadoop/hbase/client/Scan.html#setReadType-org.apache.hadoop.hbase.client.Scan.ReadType-"><code>Scan.setReadType(ReadType)</code></a> instead.
              And for the one rpc optimization, now we will also fetch data when openScanner, and
@@ -1966,137 +1961,137 @@
              automatically which means we will fall back to one rpc.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Scan.html#setStartRow-byte:A-">org.apache.hadoop.hbase.client.Scan.setStartRow(byte[])</a>
 <div class="block"><span class="deprecationComment">use <a href="org/apache/hadoop/hbase/client/Scan.html#withStartRow-byte:A-"><code>Scan.withStartRow(byte[])</code></a> instead. This method may change the inclusive of
              the stop row to keep compatible with the old behavior.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Scan.html#setStopRow-byte:A-">org.apache.hadoop.hbase.client.Scan.setStopRow(byte[])</a>
 <div class="block"><span class="deprecationComment">use <a href="org/apache/hadoop/hbase/client/Scan.html#withStopRow-byte:A-"><code>Scan.withStopRow(byte[])</code></a> instead. This method may change the inclusive of
              the stop row to keep compatible with the old behavior.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html#setTableCFsMap-java.util.Map-">org.apache.hadoop.hbase.replication.ReplicationPeerConfig.setTableCFsMap(Map&lt;TableName, ? extends Collection&lt;String&gt;&gt;)</a>
 <div class="block"><span class="deprecationComment">as release of 2.0.0, and it will be removed in 3.0.0. Use
              <a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setTableCFsMap-java.util.Map-"><code>ReplicationPeerConfigBuilder.setTableCFsMap(Map)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#setTimestamp-org.apache.hadoop.hbase.Cell-byte:A-int-">org.apache.hadoop.hbase.CellUtil.setTimestamp(Cell, byte[], int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#setTimestamp-org.apache.hadoop.hbase.Cell-long-">org.apache.hadoop.hbase.CellUtil.setTimestamp(Cell, long)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Get.html#setTimeStamp-long-">org.apache.hadoop.hbase.client.Get.setTimeStamp(long)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.
              Use <a href="org/apache/hadoop/hbase/client/Get.html#setTimestamp-long-"><code>Get.setTimestamp(long)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Scan.html#setTimeStamp-long-">org.apache.hadoop.hbase.client.Scan.setTimeStamp(long)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.
              Use <a href="org/apache/hadoop/hbase/client/Scan.html#setTimestamp-long-"><code>Scan.setTimestamp(long)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Table.html#setWriteRpcTimeout-int-">org.apache.hadoop.hbase.client.Table.setWriteRpcTimeout(int)</a>
 <div class="block"><span class="deprecationComment">since 2.0.0, use <a href="org/apache/hadoop/hbase/client/TableBuilder.html#setWriteRpcTimeout-int-"><code>TableBuilder.setWriteRpcTimeout(int)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/rest/client/RemoteHTable.html#setWriteRpcTimeout-int-">org.apache.hadoop.hbase.rest.client.RemoteHTable.setWriteRpcTimeout(int)</a></td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#tagsIterator-byte:A-int-int-">org.apache.hadoop.hbase.CellUtil.tagsIterator(byte[], int, int)</a>
 <div class="block"><span class="deprecationComment">As of 2.0.0 and will be removed in 3.0.0
              Instead use <code>#tagsIterator(Cell)</code></span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HRegionInfo.html#toByteArray--">org.apache.hadoop.hbase.HRegionInfo.toByteArray()</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0
              Use <a href="org/apache/hadoop/hbase/client/RegionInfo.html#toByteArray-org.apache.hadoop.hbase.client.RegionInfo-"><code>RegionInfo.toByteArray(RegionInfo)</code></a>.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/util/Bytes.html#toByteString--">org.apache.hadoop.hbase.util.Bytes.toByteString()</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HRegionInfo.html#toDelimitedByteArray--">org.apache.hadoop.hbase.HRegionInfo.toDelimitedByteArray()</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0
              Use <a href="org/apache/hadoop/hbase/client/RegionInfo.html#toDelimitedByteArray-org.apache.hadoop.hbase.client.RegionInfo-"><code>RegionInfo.toDelimitedByteArray(RegionInfo)</code></a>.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/HRegionInfo.html#toDelimitedByteArray-org.apache.hadoop.hbase.HRegionInfo...-">org.apache.hadoop.hbase.HRegionInfo.toDelimitedByteArray(HRegionInfo...)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0
              Use <a href="org/apache/hadoop/hbase/client/RegionInfo.html#toDelimitedByteArray-org.apache.hadoop.hbase.client.RegionInfo...-"><code>RegionInfo.toDelimitedByteArray(RegionInfo...)</code></a>.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/util/Bytes.html#toIntUnsafe-byte:A-int-">org.apache.hadoop.hbase.util.Bytes.toIntUnsafe(byte[], int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/util/Bytes.html#toLongUnsafe-byte:A-int-">org.apache.hadoop.hbase.util.Bytes.toLongUnsafe(byte[], int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/util/Bytes.html#toShortUnsafe-byte:A-int-">org.apache.hadoop.hbase.util.Bytes.toShortUnsafe(byte[], int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#updateLatestStamp-org.apache.hadoop.hbase.Cell-byte:A-int-">org.apache.hadoop.hbase.CellUtil.updateLatestStamp(Cell, byte[], int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#updateLatestStamp-org.apache.hadoop.hbase.Cell-long-">org.apache.hadoop.hbase.CellUtil.updateLatestStamp(Cell, long)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/replication/ReplicationAdmin.html#updatePeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">org.apache.hadoop.hbase.client.replication.ReplicationAdmin.updatePeerConfig(String, ReplicationPeerConfig)</a>
 <div class="block"><span class="deprecationComment">use
              <a href="org/apache/hadoop/hbase/client/Admin.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-"><code>Admin.updateReplicationPeerConfig(String, ReplicationPeerConfig)</code></a>
              instead</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/io/TimeRange.html#withinTimeRange-byte:A-int-">org.apache.hadoop.hbase.io.TimeRange.withinTimeRange(byte[], int)</a>
 <div class="block"><span class="deprecationComment">This is made @InterfaceAudience.Private in the 2.0 line and above and may be
    changed to private or removed in 3.0. Use <a href="org/apache/hadoop/hbase/io/TimeRange.html#withinTimeRange-long-"><code>TimeRange.withinTimeRange(long)</code></a> instead</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#writeFlatKey-org.apache.hadoop.hbase.Cell-java.io.OutputStream-">org.apache.hadoop.hbase.CellUtil.writeFlatKey(Cell, OutputStream)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#writeQualifierSkippingBytes-java.io.DataOutputStream-org.apache.hadoop.hbase.Cell-int-int-">org.apache.hadoop.hbase.CellUtil.writeQualifierSkippingBytes(DataOutputStream, Cell, int, int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#writeRowKeyExcludingCommon-org.apache.hadoop.hbase.Cell-short-int-java.io.DataOutputStream-">org.apache.hadoop.hbase.CellUtil.writeRowKeyExcludingCommon(Cell, short, int, DataOutputStream)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/CellUtil.html#writeRowSkippingBytes-java.io.DataOutputStream-org.apache.hadoop.hbase.Cell-short-int-">org.apache.hadoop.hbase.CellUtil.writeRowSkippingBytes(DataOutputStream, Cell, short, int)</a>
 <div class="block"><span class="deprecationComment">As of release 2.0.0, this will be removed in HBase 3.0.0.</span></div>
 </td>
diff --git a/apidocs/index-all.html b/apidocs/index-all.html
index 774f90b..c4bcc82 100644
--- a/apidocs/index-all.html
+++ b/apidocs/index-all.html
@@ -9035,6 +9035,14 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/QuotaSettings.html#getUserName--">getUserName()</a></span> - Method in class org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/Admin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions(GetUserPermissionsRequest)</a></span> - Method in interface org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Admin.html" title="interface in org.apache.hadoop.hbase.client">Admin</a></dt>
+<dd>
+<div class="block">Get the global/namespace/table permissions for user</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/AsyncAdmin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions(GetUserPermissionsRequest)</a></span> - Method in interface org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/AsyncAdmin.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdmin</a></dt>
+<dd>
+<div class="block">Get the global/namespace/table permissions for user</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/util/Bytes.html#getUtf8ByteArrays-java.util.List-">getUtf8ByteArrays(List&lt;String&gt;)</a></span> - Static method in class org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue(Bytes)</a></span> - Method in interface org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a></dt>
@@ -11324,12 +11332,6 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-">isTableAvailable(TableName)</a></span> - Method in interface org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/AsyncAdmin.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdmin</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-byte:A:A-">isTableAvailable(TableName, byte[][])</a></span> - Method in interface org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/AsyncAdmin.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdmin</a></dt>
-<dd>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>
-<div class="block"><span class="deprecationComment">Since 2.2.0. Will be removed in 3.0.0. Use <a href="org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-"><code>AsyncAdmin.isTableAvailable(TableName)</code></a></span></div>
-</div>
-</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/rest/client/RemoteAdmin.html#isTableAvailable-java.lang.String-">isTableAvailable(String)</a></span> - Method in class org.apache.hadoop.hbase.rest.client.<a href="org/apache/hadoop/hbase/rest/client/RemoteAdmin.html" title="class in org.apache.hadoop.hbase.rest.client">RemoteAdmin</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/rest/client/RemoteAdmin.html#isTableAvailable-byte:A-">isTableAvailable(byte[])</a></span> - Method in class org.apache.hadoop.hbase.rest.client.<a href="org/apache/hadoop/hbase/rest/client/RemoteAdmin.html" title="class in org.apache.hadoop.hbase.rest.client">RemoteAdmin</a></dt>
diff --git a/apidocs/org/apache/hadoop/hbase/class-use/TableName.html b/apidocs/org/apache/hadoop/hbase/class-use/TableName.html
index 219f511..99002a6 100644
--- a/apidocs/org/apache/hadoop/hbase/class-use/TableName.html
+++ b/apidocs/org/apache/hadoop/hbase/class-use/TableName.html
@@ -1097,57 +1097,48 @@ Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-byte:A:A-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                byte[][]&nbsp;splitKeys)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
-<div class="block"><span class="deprecationComment">Since 2.2.0. Will be removed in 3.0.0. Use <a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-"><code>AsyncAdmin.isTableAvailable(TableName)</code></a></span></div>
-</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isTableDisabled-org.apache.hadoop.hbase.TableName-">isTableDisabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableDisabled-org.apache.hadoop.hbase.TableName-">isTableDisabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isTableEnabled-org.apache.hadoop.hbase.TableName-">isTableEnabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableEnabled-org.apache.hadoop.hbase.TableName-">isTableEnabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompact-org.apache.hadoop.hbase.TableName-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Major compact a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Major compact a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnFamily)</code>
 <div class="block">Major compact a column family within a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnFamily)</code>
 <div class="block">Major compact a column family within a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnFamily,
@@ -1155,7 +1146,7 @@ Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
 <div class="block">Major compact a column family within a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnFamily,
@@ -1163,60 +1154,60 @@ Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
 <div class="block">Major compact a column family within a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>
 <div class="block">Major compact a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>
 <div class="block">Major compact a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>
 <div class="block">Modify an existing column family on a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>
 <div class="block">Modify an existing column family on a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#modifyColumnFamilyAsync-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamilyAsync</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                        <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>
 <div class="block">Modify an existing column family on a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#newBuilder-org.apache.hadoop.hbase.TableName-">newBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#snapshot-java.lang.String-org.apache.hadoop.hbase.TableName-">snapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
         <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Take a snapshot for the given table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#snapshot-java.lang.String-org.apache.hadoop.hbase.TableName-">snapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
         <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Take a snapshot for the given table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#snapshot-java.lang.String-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.SnapshotType-">snapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
         <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -1224,7 +1215,7 @@ Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
 <div class="block">Create typed snapshot of the table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#snapshot-java.lang.String-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.SnapshotType-">snapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
         <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -1232,55 +1223,55 @@ Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
 <div class="block">Create typed snapshot of the table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#split-org.apache.hadoop.hbase.TableName-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Split a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#split-org.apache.hadoop.hbase.TableName-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Split a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#split-org.apache.hadoop.hbase.TableName-byte:A-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
      byte[]&nbsp;splitPoint)</code>
 <div class="block">Split a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#split-org.apache.hadoop.hbase.TableName-byte:A-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
      byte[]&nbsp;splitPoint)</code>
 <div class="block">Split a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#tableExists-org.apache.hadoop.hbase.TableName-">tableExists</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#tableExists-org.apache.hadoop.hbase.TableName-">tableExists</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#truncateTable-org.apache.hadoop.hbase.TableName-boolean-">truncateTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
              boolean&nbsp;preserveSplits)</code>
 <div class="block">Truncate a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#truncateTable-org.apache.hadoop.hbase.TableName-boolean-">truncateTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
              boolean&nbsp;preserveSplits)</code>
 <div class="block">Truncate a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#truncateTableAsync-org.apache.hadoop.hbase.TableName-boolean-">truncateTableAsync</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   boolean&nbsp;preserveSplits)</code>
diff --git a/apidocs/org/apache/hadoop/hbase/client/Admin.html b/apidocs/org/apache/hadoop/hbase/client/Admin.html
index 28081b1..54fa46f 100644
--- a/apidocs/org/apache/hadoop/hbase/client/Admin.html
+++ b/apidocs/org/apache/hadoop/hbase/client/Admin.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":6,"i1":50,"i2":38,"i3":18,"i4":6,"i5":18,"i6":18,"i7":18,"i8":6,"i9":18,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":18,"i20":18,"i21":18,"i22":6,"i23":6,"i24":6,"i25":6,"i26":6,"i27":6,"i28":6,"i29":6,"i30":6,"i31":6,"i32":6,"i33":6,"i34":6,"i35":18,"i36":6,"i37":6,"i38":18,"i39":6,"i40":6,"i41":6,"i42":18,"i43":6,"i44":18,"i45":6,"i46":6,"i47":6,"i48":18,"i49":6,"i50":6,"i51":18,"i52":6,"i53":18,"i54":6,"i55":6,"i56":18,"i57":6,"i58" [...]
+var methods = {"i0":6,"i1":50,"i2":38,"i3":18,"i4":6,"i5":18,"i6":18,"i7":18,"i8":6,"i9":18,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":18,"i20":18,"i21":18,"i22":6,"i23":6,"i24":6,"i25":6,"i26":6,"i27":6,"i28":6,"i29":6,"i30":6,"i31":6,"i32":6,"i33":6,"i34":6,"i35":18,"i36":6,"i37":6,"i38":18,"i39":6,"i40":6,"i41":6,"i42":18,"i43":6,"i44":18,"i45":6,"i46":6,"i47":6,"i48":18,"i49":6,"i50":6,"i51":18,"i52":6,"i53":18,"i54":6,"i55":6,"i56":18,"i57":6,"i58" [...]
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],16:["t5","Default Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -106,7 +106,7 @@ var activeTableTab = "activeTableTab";
 <hr>
 <br>
 <pre>@InterfaceAudience.Public
-public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.75">Admin</a>
+public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.76">Admin</a>
 extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a></pre>
 <div class="block">The administrative API for HBase. Obtain an instance from <a href="../../../../../org/apache/hadoop/hbase/client/Connection.html#getAdmin--"><code>Connection.getAdmin()</code></a> and
  call <a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#close--"><code>close()</code></a> when done.
@@ -778,55 +778,61 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 </td>
 </tr>
 <tr id="i99" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.security.access.UserPermission&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest&nbsp;getUserPermissionsRequest)</code>
+<div class="block">Get the global/namespace/table permissions for user</div>
+</td>
+</tr>
+<tr id="i100" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#grant-org.apache.hadoop.hbase.security.access.UserPermission-boolean-">grant</a></span>(org.apache.hadoop.hbase.security.access.UserPermission&nbsp;userPermission,
      boolean&nbsp;mergeExistingPermissions)</code>
 <div class="block">Grants user specific permissions</div>
 </td>
 </tr>
-<tr id="i100" class="altColor">
+<tr id="i101" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isAborted--">isAborted</a></span>()</code>
 <div class="block">Check if the server or client was aborted.</div>
 </td>
 </tr>
-<tr id="i101" class="rowColor">
+<tr id="i102" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isBalancerEnabled--">isBalancerEnabled</a></span>()</code>
 <div class="block">Query the current state of the balancer.</div>
 </td>
 </tr>
-<tr id="i102" class="altColor">
+<tr id="i103" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isCatalogJanitorEnabled--">isCatalogJanitorEnabled</a></span>()</code>
 <div class="block">Query on the catalog janitor state (Enabled/Disabled?).</div>
 </td>
 </tr>
-<tr id="i103" class="rowColor">
+<tr id="i104" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isCleanerChoreEnabled--">isCleanerChoreEnabled</a></span>()</code>
 <div class="block">Query on the cleaner chore state (Enabled/Disabled?).</div>
 </td>
 </tr>
-<tr id="i104" class="altColor">
+<tr id="i105" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isMasterInMaintenanceMode--">isMasterInMaintenanceMode</a></span>()</code>
 <div class="block">Check whether Master is in maintenance mode.</div>
 </td>
 </tr>
-<tr id="i105" class="rowColor">
+<tr id="i106" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isMergeEnabled--">isMergeEnabled</a></span>()</code>
 <div class="block">Query the current state of the merge switch.</div>
 </td>
 </tr>
-<tr id="i106" class="altColor">
+<tr id="i107" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isNormalizerEnabled--">isNormalizerEnabled</a></span>()</code>
 <div class="block">Query the current state of the region normalizer.</div>
 </td>
 </tr>
-<tr id="i107" class="rowColor">
+<tr id="i108" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isProcedureFinished-java.lang.String-java.lang.String-java.util.Map-">isProcedureFinished</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;signature,
                    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;instance,
@@ -834,141 +840,141 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <div class="block">Check the current state of the specified procedure.</div>
 </td>
 </tr>
-<tr id="i108" class="altColor">
+<tr id="i109" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isRpcThrottleEnabled--">isRpcThrottleEnabled</a></span>()</code>
 <div class="block">Get if the rpc throttle is enabled.</div>
 </td>
 </tr>
-<tr id="i109" class="rowColor">
+<tr id="i110" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isSnapshotFinished-org.apache.hadoop.hbase.client.SnapshotDescription-">isSnapshotFinished</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>
 <div class="block">Check the current state of the passed snapshot.</div>
 </td>
 </tr>
-<tr id="i110" class="altColor">
+<tr id="i111" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isSplitEnabled--">isSplitEnabled</a></span>()</code>
 <div class="block">Query the current state of the split switch.</div>
 </td>
 </tr>
-<tr id="i111" class="rowColor">
+<tr id="i112" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr id="i112" class="altColor">
+<tr id="i113" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isTableDisabled-org.apache.hadoop.hbase.TableName-">isTableDisabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr id="i113" class="rowColor">
+<tr id="i114" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isTableEnabled-org.apache.hadoop.hbase.TableName-">isTableEnabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr id="i114" class="altColor">
+<tr id="i115" class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listDeadServers--">listDeadServers</a></span>()</code>
 <div class="block">List dead region servers.</div>
 </td>
 </tr>
-<tr id="i115" class="rowColor">
+<tr id="i116" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listDecommissionedRegionServers--">listDecommissionedRegionServers</a></span>()</code>
 <div class="block">List region servers marked as decommissioned, which can not be assigned regions.</div>
 </td>
 </tr>
-<tr id="i116" class="altColor">
+<tr id="i117" class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listNamespaceDescriptors--">listNamespaceDescriptors</a></span>()</code>
 <div class="block">List available namespace descriptors.</div>
 </td>
 </tr>
-<tr id="i117" class="rowColor">
+<tr id="i118" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/replication/TableCFs.html" title="class in org.apache.hadoop.hbase.client.replication">TableCFs</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listReplicatedTableCFs--">listReplicatedTableCFs</a></span>()</code>
 <div class="block">Find all table and column families that are replicated from this cluster</div>
 </td>
 </tr>
-<tr id="i118" class="altColor">
+<tr id="i119" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listReplicationPeers--">listReplicationPeers</a></span>()</code>
 <div class="block">Return a list of replication peers.</div>
 </td>
 </tr>
-<tr id="i119" class="rowColor">
+<tr id="i120" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listReplicationPeers-java.util.regex.Pattern-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>
 <div class="block">Return a list of replication peers.</div>
 </td>
 </tr>
-<tr id="i120" class="altColor">
+<tr id="i121" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listSnapshots--">listSnapshots</a></span>()</code>
 <div class="block">List completed snapshots.</div>
 </td>
 </tr>
-<tr id="i121" class="rowColor">
+<tr id="i122" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listSnapshots-java.util.regex.Pattern-">listSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>
 <div class="block">List all the completed snapshots matching the given pattern.</div>
 </td>
 </tr>
-<tr id="i122" class="altColor">
+<tr id="i123" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableDescriptors--">listTableDescriptors</a></span>()</code>
 <div class="block">List all the userspace tables.</div>
 </td>
 </tr>
-<tr id="i123" class="rowColor">
+<tr id="i124" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>
 <div class="block">Get tableDescriptors.</div>
 </td>
 </tr>
-<tr id="i124" class="altColor">
+<tr id="i125" class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableDescriptors-java.util.regex.Pattern-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>
 <div class="block">List all the userspace tables that match the given pattern.</div>
 </td>
 </tr>
-<tr id="i125" class="rowColor">
+<tr id="i126" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableDescriptors-java.util.regex.Pattern-boolean-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
                     boolean&nbsp;includeSysTables)</code>
 <div class="block">List all the tables matching the given pattern.</div>
 </td>
 </tr>
-<tr id="i126" class="altColor">
+<tr id="i127" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableDescriptorsByNamespace-byte:A-">listTableDescriptorsByNamespace</a></span>(byte[]&nbsp;name)</code>
 <div class="block">Get list of table descriptors by namespace.</div>
 </td>
 </tr>
-<tr id="i127" class="rowColor">
+<tr id="i128" class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableNames--">listTableNames</a></span>()</code>
 <div class="block">List all of the names of userspace tables.</div>
 </td>
 </tr>
-<tr id="i128" class="altColor">
+<tr id="i129" class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableNames-java.util.regex.Pattern-">listTableNames</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>
 <div class="block">List all of the names of userspace tables.</div>
 </td>
 </tr>
-<tr id="i129" class="rowColor">
+<tr id="i130" class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableNames-java.util.regex.Pattern-boolean-">listTableNames</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
               boolean&nbsp;includeSysTables)</code>
 <div class="block">List all of the names of userspace tables.</div>
 </td>
 </tr>
-<tr id="i130" class="altColor">
+<tr id="i131" class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableNamesByNamespace-java.lang.String-">listTableNamesByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Get list of table names by namespace.</div>
 </td>
 </tr>
-<tr id="i131" class="rowColor">
+<tr id="i132" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableSnapshots-java.util.regex.Pattern-java.util.regex.Pattern-">listTableSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;snapshotNamePattern)</code>
@@ -976,20 +982,20 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
  name regular expression.</div>
 </td>
 </tr>
-<tr id="i132" class="altColor">
+<tr id="i133" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompact-org.apache.hadoop.hbase.TableName-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Major compact a table.</div>
 </td>
 </tr>
-<tr id="i133" class="rowColor">
+<tr id="i134" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnFamily)</code>
 <div class="block">Major compact a column family within a table.</div>
 </td>
 </tr>
-<tr id="i134" class="altColor">
+<tr id="i135" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnFamily,
@@ -997,40 +1003,40 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <div class="block">Major compact a column family within a table.</div>
 </td>
 </tr>
-<tr id="i135" class="rowColor">
+<tr id="i136" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>
 <div class="block">Major compact a table.</div>
 </td>
 </tr>
-<tr id="i136" class="altColor">
+<tr id="i137" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompactRegion-byte:A-">majorCompactRegion</a></span>(byte[]&nbsp;regionName)</code>
 <div class="block">Major compact a table or an individual region.</div>
 </td>
 </tr>
-<tr id="i137" class="rowColor">
+<tr id="i138" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompactRegion-byte:A-byte:A-">majorCompactRegion</a></span>(byte[]&nbsp;regionName,
                   byte[]&nbsp;columnFamily)</code>
 <div class="block">Major compact a column family within region.</div>
 </td>
 </tr>
-<tr id="i138" class="altColor">
+<tr id="i139" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompactRegionServer-org.apache.hadoop.hbase.ServerName-">majorCompactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Major compact all regions on the region server.</div>
 </td>
 </tr>
-<tr id="i139" class="rowColor">
+<tr id="i140" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#mergeRegionsAsync-byte:A:A-boolean-">mergeRegionsAsync</a></span>(byte[][]&nbsp;nameofRegionsToMerge,
                  boolean&nbsp;forcible)</code>
 <div class="block">Merge regions.</div>
 </td>
 </tr>
-<tr id="i140" class="altColor">
+<tr id="i141" class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#mergeRegionsAsync-byte:A-byte:A-boolean-">mergeRegionsAsync</a></span>(byte[]&nbsp;nameOfRegionA,
                  byte[]&nbsp;nameOfRegionB,
@@ -1038,116 +1044,116 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <div class="block">Merge two regions.</div>
 </td>
 </tr>
-<tr id="i141" class="rowColor">
+<tr id="i142" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#mergeSwitch-boolean-boolean-">mergeSwitch</a></span>(boolean&nbsp;enabled,
            boolean&nbsp;synchronous)</code>
 <div class="block">Turn the merge switch on or off.</div>
 </td>
 </tr>
-<tr id="i142" class="altColor">
+<tr id="i143" class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>
 <div class="block">Modify an existing column family on a table.</div>
 </td>
 </tr>
-<tr id="i143" class="rowColor">
+<tr id="i144" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#modifyColumnFamilyAsync-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamilyAsync</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                        <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>
 <div class="block">Modify an existing column family on a table.</div>
 </td>
 </tr>
-<tr id="i144" class="altColor">
+<tr id="i145" class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#modifyNamespace-org.apache.hadoop.hbase.NamespaceDescriptor-">modifyNamespace</a></span>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)</code>
 <div class="block">Modify an existing namespace.</div>
 </td>
 </tr>
-<tr id="i145" class="rowColor">
+<tr id="i146" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#modifyNamespaceAsync-org.apache.hadoop.hbase.NamespaceDescriptor-">modifyNamespaceAsync</a></span>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)</code>
 <div class="block">Modify an existing namespace.</div>
 </td>
 </tr>
-<tr id="i146" class="altColor">
+<tr id="i147" class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#modifyTable-org.apache.hadoop.hbase.client.TableDescriptor-">modifyTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;td)</code>
 <div class="block">Modify an existing table, more IRB friendly version.</div>
 </td>
 </tr>
-<tr id="i147" class="rowColor">
+<tr id="i148" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#modifyTableAsync-org.apache.hadoop.hbase.client.TableDescriptor-">modifyTableAsync</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;td)</code>
 <div class="block">Modify an existing table, more IRB (ruby) friendly version.</div>
 </td>
 </tr>
-<tr id="i148" class="altColor">
+<tr id="i149" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#move-byte:A-byte:A-">move</a></span>(byte[]&nbsp;encodedRegionName,
     byte[]&nbsp;destServerName)</code>
 <div class="block">Move the region <code>r</code> to <code>dest</code>.</div>
 </td>
 </tr>
-<tr id="i149" class="rowColor">
+<tr id="i150" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#normalize--">normalize</a></span>()</code>
 <div class="block">Invoke region normalizer.</div>
 </td>
 </tr>
-<tr id="i150" class="altColor">
+<tr id="i151" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#normalizerSwitch-boolean-">normalizerSwitch</a></span>(boolean&nbsp;on)</code>
 <div class="block">Turn region normalizer on or off.</div>
 </td>
 </tr>
-<tr id="i151" class="rowColor">
+<tr id="i152" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#offline-byte:A-">offline</a></span>(byte[]&nbsp;regionName)</code>
 <div class="block">Offline specified region from master's in-memory state.</div>
 </td>
 </tr>
-<tr id="i152" class="altColor">
+<tr id="i153" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#recommissionRegionServer-org.apache.hadoop.hbase.ServerName-java.util.List-">recommissionRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
                         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;encodedRegionNames)</code>
 <div class="block">Remove decommission marker from a region server to allow regions assignments.</div>
 </td>
 </tr>
-<tr id="i153" class="rowColor">
+<tr id="i154" class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#removeReplicationPeer-java.lang.String-">removeReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
 <div class="block">Remove a peer and stop the replication.</div>
 </td>
 </tr>
-<tr id="i154" class="altColor">
+<tr id="i155" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#removeReplicationPeerAsync-java.lang.String-">removeReplicationPeerAsync</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
 <div class="block">Remove a replication peer but does not block and wait for it.</div>
 </td>
 </tr>
-<tr id="i155" class="rowColor">
+<tr id="i156" class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#removeReplicationPeerTableCFs-java.lang.String-java.util.Map-">removeReplicationPeerTableCFs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id,
                              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Str [...]
 <div class="block">Remove some table-cfs from config of the specified peer.</div>
 </td>
 </tr>
-<tr id="i156" class="altColor">
+<tr id="i157" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#restoreSnapshot-java.lang.String-">restoreSnapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName)</code>
 <div class="block">Restore the specified snapshot on the original table.</div>
 </td>
 </tr>
-<tr id="i157" class="rowColor">
+<tr id="i158" class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#restoreSnapshot-java.lang.String-boolean-">restoreSnapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
                boolean&nbsp;takeFailSafeSnapshot)</code>
 <div class="block">Restore the specified snapshot on the original table.</div>
 </td>
 </tr>
-<tr id="i158" class="altColor">
+<tr id="i159" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#restoreSnapshot-java.lang.String-boolean-boolean-">restoreSnapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
                boolean&nbsp;takeFailSafeSnapshot,
@@ -1155,56 +1161,56 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <div class="block">Restore the specified snapshot on the original table.</div>
 </td>
 </tr>
-<tr id="i159" class="rowColor">
+<tr id="i160" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#revoke-org.apache.hadoop.hbase.security.access.UserPermission-">revoke</a></span>(org.apache.hadoop.hbase.security.access.UserPermission&nbsp;userPermission)</code>
 <div class="block">Revokes user specific permissions</div>
 </td>
 </tr>
-<tr id="i160" class="altColor">
+<tr id="i161" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#rollWALWriter-org.apache.hadoop.hbase.ServerName-">rollWALWriter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Roll the log writer.</div>
 </td>
 </tr>
-<tr id="i161" class="rowColor">
+<tr id="i162" class="altColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#runCatalogJanitor--">runCatalogJanitor</a></span>()</code>
 <div class="block">Ask for a scan of the catalog table.</div>
 </td>
 </tr>
-<tr id="i162" class="altColor">
+<tr id="i163" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#runCleanerChore--">runCleanerChore</a></span>()</code>
 <div class="block">Ask for cleaner chore to run.</div>
 </td>
 </tr>
-<tr id="i163" class="rowColor">
+<tr id="i164" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#setQuota-org.apache.hadoop.hbase.quotas.QuotaSettings-">setQuota</a></span>(<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;quota)</code>
 <div class="block">Apply the new quota settings.</div>
 </td>
 </tr>
-<tr id="i164" class="altColor">
+<tr id="i165" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#shutdown--">shutdown</a></span>()</code>
 <div class="block">Shuts down the HBase cluster.</div>
 </td>
 </tr>
-<tr id="i165" class="rowColor">
+<tr id="i166" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#snapshot-org.apache.hadoop.hbase.client.SnapshotDescription-">snapshot</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>
 <div class="block">Take a snapshot and wait for the server to complete that snapshot (blocking).</div>
 </td>
 </tr>
-<tr id="i166" class="altColor">
+<tr id="i167" class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#snapshot-java.lang.String-org.apache.hadoop.hbase.TableName-">snapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
         <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Take a snapshot for the given table.</div>
 </td>
 </tr>
-<tr id="i167" class="rowColor">
+<tr id="i168" class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#snapshot-java.lang.String-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.SnapshotType-">snapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
         <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -1212,119 +1218,119 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <div class="block">Create typed snapshot of the table.</div>
 </td>
 </tr>
-<tr id="i168" class="altColor">
+<tr id="i169" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#snapshotAsync-org.apache.hadoop.hbase.client.SnapshotDescription-">snapshotAsync</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>
 <div class="block">Take a snapshot without waiting for the server to complete that snapshot (asynchronous) Only a
  single snapshot should be taken at a time, or results may be undefined.</div>
 </td>
 </tr>
-<tr id="i169" class="rowColor">
+<tr id="i170" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#split-org.apache.hadoop.hbase.TableName-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Split a table.</div>
 </td>
 </tr>
-<tr id="i170" class="altColor">
+<tr id="i171" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#split-org.apache.hadoop.hbase.TableName-byte:A-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
      byte[]&nbsp;splitPoint)</code>
 <div class="block">Split a table.</div>
 </td>
 </tr>
-<tr id="i171" class="rowColor">
+<tr id="i172" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#splitRegionAsync-byte:A-byte:A-">splitRegionAsync</a></span>(byte[]&nbsp;regionName,
                 byte[]&nbsp;splitPoint)</code>
 <div class="block">Split an individual region.</div>
 </td>
 </tr>
-<tr id="i172" class="altColor">
+<tr id="i173" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#splitSwitch-boolean-boolean-">splitSwitch</a></span>(boolean&nbsp;enabled,
            boolean&nbsp;synchronous)</code>
 <div class="block">Turn the split switch on or off.</div>
 </td>
 </tr>
-<tr id="i173" class="rowColor">
+<tr id="i174" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#stopMaster--">stopMaster</a></span>()</code>
 <div class="block">Shuts down the current HBase master only.</div>
 </td>
 </tr>
-<tr id="i174" class="altColor">
+<tr id="i175" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#stopRegionServer-java.lang.String-">stopRegionServer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostnamePort)</code>
 <div class="block">Stop the designated regionserver.</div>
 </td>
 </tr>
-<tr id="i175" class="rowColor">
+<tr id="i176" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#switchRpcThrottle-boolean-">switchRpcThrottle</a></span>(boolean&nbsp;enable)</code>
 <div class="block">Switch the rpc throttle enable state.</div>
 </td>
 </tr>
-<tr id="i176" class="altColor">
+<tr id="i177" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#tableExists-org.apache.hadoop.hbase.TableName-">tableExists</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr id="i177" class="rowColor">
+<tr id="i178" class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#transitReplicationPeerSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                           <a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;state)</code>
 <div class="block">Transit current cluster to a new state in a synchronous replication peer.</div>
 </td>
 </tr>
-<tr id="i178" class="altColor">
+<tr id="i179" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#transitReplicationPeerSyncReplicationStateAsync-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationStateAsync</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                                <a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;state)</code>
 <div class="block">Transit current cluster to a new state in a synchronous replication peer.</div>
 </td>
 </tr>
-<tr id="i179" class="rowColor">
+<tr id="i180" class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#truncateTable-org.apache.hadoop.hbase.TableName-boolean-">truncateTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
              boolean&nbsp;preserveSplits)</code>
 <div class="block">Truncate a table.</div>
 </td>
 </tr>
-<tr id="i180" class="altColor">
+<tr id="i181" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#truncateTableAsync-org.apache.hadoop.hbase.TableName-boolean-">truncateTableAsync</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   boolean&nbsp;preserveSplits)</code>
 <div class="block">Truncate the table but does not block and wait for it to be completely enabled.</div>
 </td>
 </tr>
-<tr id="i181" class="rowColor">
+<tr id="i182" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#unassign-byte:A-boolean-">unassign</a></span>(byte[]&nbsp;regionName,
         boolean&nbsp;force)</code>
 <div class="block">Unassign a region from current hosting regionserver.</div>
 </td>
 </tr>
-<tr id="i182" class="altColor">
+<tr id="i183" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#updateConfiguration--">updateConfiguration</a></span>()</code>
 <div class="block">Update the configuration and trigger an online config change
  on all the regionservers.</div>
 </td>
 </tr>
-<tr id="i183" class="rowColor">
+<tr id="i184" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#updateConfiguration-org.apache.hadoop.hbase.ServerName-">updateConfiguration</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server)</code>
 <div class="block">Update the configuration and trigger an online config change
  on the regionserver.</div>
 </td>
 </tr>
-<tr id="i184" class="altColor">
+<tr id="i185" class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                            <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</code>
 <div class="block">Update the peerConfig for the specified peer.</div>
 </td>
 </tr>
-<tr id="i185" class="rowColor">
+<tr id="i186" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#updateReplicationPeerConfigAsync-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfigAsync</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                 <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</code>
@@ -1352,7 +1358,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getOperationTimeout</h4>
-<pre>int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.81">getOperationTimeout</a>()</pre>
+<pre>int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.82">getOperationTimeout</a>()</pre>
 <div class="block">Return the operation timeout for a rpc call.</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1366,7 +1372,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getSyncWaitTimeout</h4>
-<pre>int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.96">getSyncWaitTimeout</a>()</pre>
+<pre>int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.97">getSyncWaitTimeout</a>()</pre>
 <div class="block">Return the blocking wait time for an asynchronous operation. Can be configured by
  <code>hbase.client.sync.wait.timeout.msec</code>.
  <p/>
@@ -1389,7 +1395,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>abort</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.99">abort</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;why,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.100">abort</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;why,
            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;e)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code>org.apache.hadoop.hbase.Abortable</code></span></div>
 <div class="block">Abort the server or client.</div>
@@ -1408,7 +1414,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>isAborted</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.102">isAborted</a>()</pre>
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.103">isAborted</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code>org.apache.hadoop.hbase.Abortable</code></span></div>
 <div class="block">Check if the server or client was aborted.</div>
 <dl>
@@ -1425,7 +1431,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getConnection</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.107">getConnection</a>()</pre>
+<pre><a href="../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.108">getConnection</a>()</pre>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>Connection used by this object.</dd>
@@ -1438,7 +1444,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>tableExists</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.114">tableExists</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.115">tableExists</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1456,7 +1462,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableDescriptors</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.122">listTableDescriptors</a>()
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.123">listTableDescriptors</a>()
                                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List all the userspace tables.</div>
 <dl>
@@ -1473,7 +1479,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableDescriptors</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.132">listTableDescriptors</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/rege [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.133">listTableDescriptors</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/rege [...]
                                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List all the userspace tables that match the given pattern.</div>
 <dl>
@@ -1494,7 +1500,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableDescriptors</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.145">listTableDescriptors</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.htm [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.146">listTableDescriptors</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.htm [...]
                                            boolean&nbsp;includeSysTables)
                                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List all the tables matching the given pattern.</div>
@@ -1517,7 +1523,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableNames</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.154">listTableNames</a>()
+<pre><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.155">listTableNames</a>()
                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List all of the names of userspace tables.</div>
 <dl>
@@ -1534,7 +1540,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableNames</h4>
-<pre>default&nbsp;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.162">listTableNames</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)
+<pre>default&nbsp;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.163">listTableNames</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)
                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List all of the names of userspace tables.</div>
 <dl>
@@ -1553,7 +1559,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableNames</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.173">listTableNames</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
+<pre><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.174">listTableNames</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
                            boolean&nbsp;includeSysTables)
                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List all of the names of userspace tables.</div>
@@ -1574,7 +1580,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getDescriptor</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.184">getDescriptor</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre><a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.185">getDescriptor</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                        throws <a href="../../../../../org/apache/hadoop/hbase/TableNotFoundException.html" title="class in org.apache.hadoop.hbase">TableNotFoundException</a>,
                               <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get a table descriptor.</div>
@@ -1595,7 +1601,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>createTable</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.197">createTable</a>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.198">createTable</a>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)
           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Creates a new table. Synchronous operation.</div>
 <dl>
@@ -1616,7 +1622,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>createTable</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.216">createTable</a>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.217">createTable</a>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
                  byte[]&nbsp;startKey,
                  byte[]&nbsp;endKey,
                  int&nbsp;numRegions)
@@ -1647,7 +1653,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>createTable</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.233">createTable</a>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.234">createTable</a>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
                          byte[][]&nbsp;splitKeys)
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Creates a new table with an initial set of empty regions defined by the specified split keys.
@@ -1673,7 +1679,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>createTableAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.252">createTableAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescrip [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.253">createTableAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescrip [...]
                               byte[][]&nbsp;splitKeys)
                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Creates a new table but does not block and wait for it to come online.
@@ -1701,7 +1707,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteTable</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.260">deleteTable</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.261">deleteTable</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Deletes a table. Synchronous operation.</div>
 <dl>
@@ -1718,7 +1724,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteTableAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.276">deleteTableAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" tit [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.277">deleteTableAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" tit [...]
                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Deletes the table but does not block and wait for it to be completely removed.
  You can use Future.get(long, TimeUnit) to wait on the operation to complete.
@@ -1742,7 +1748,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>truncateTable</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.284">truncateTable</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.285">truncateTable</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                            boolean&nbsp;preserveSplits)
                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Truncate a table. Synchronous operation.</div>
@@ -1761,7 +1767,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>truncateTableAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.299">truncateTableAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" t [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.300">truncateTableAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" t [...]
                                 boolean&nbsp;preserveSplits)
                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Truncate the table but does not block and wait for it to be completely enabled. You can use
@@ -1786,7 +1792,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>enableTable</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.314">enableTable</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.315">enableTable</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Enable a table. May timeout. Use <a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#enableTableAsync-org.apache.hadoop.hbase.TableName-"><code>enableTableAsync(org.apache.hadoop.hbase.TableName)</code></a>
  and <a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isTableEnabled-org.apache.hadoop.hbase.TableName-"><code>isTableEnabled(org.apache.hadoop.hbase.TableName)</code></a> instead. The table has to be in
@@ -1811,7 +1817,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>enableTableAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.330">enableTableAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" tit [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.331">enableTableAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" tit [...]
                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Enable the table but does not block and wait for it to be completely enabled.
  You can use Future.get(long, TimeUnit) to wait on the operation to complete.
@@ -1835,7 +1841,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>disableTableAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.344">disableTableAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" ti [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.345">disableTableAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" ti [...]
                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Disable the table but does not block and wait for it to be completely disabled.
  You can use Future.get(long, TimeUnit) to wait on the operation to complete.
@@ -1859,7 +1865,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>disableTable</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.355">disableTable</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.356">disableTable</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Disable table and wait on completion. May timeout eventually. Use
  <a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#disableTableAsync-org.apache.hadoop.hbase.TableName-"><code>disableTableAsync(org.apache.hadoop.hbase.TableName)</code></a> and
@@ -1880,7 +1886,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>isTableEnabled</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.364">isTableEnabled</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.365">isTableEnabled</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1898,7 +1904,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>isTableDisabled</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.371">isTableDisabled</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.372">isTableDisabled</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1916,7 +1922,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>isTableAvailable</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.378">isTableAvailable</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.379">isTableAvailable</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1934,7 +1940,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>addColumnFamily</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.388">addColumnFamily</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.389">addColumnFamily</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                              <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Add a column family to an existing table. Synchronous operation. Use
@@ -1955,7 +1961,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>addColumnFamilyAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.406">addColumnFamilyAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.407">addColumnFamilyAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" [...]
                                   <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Add a column family to an existing table. Asynchronous operation.
@@ -1981,7 +1987,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteColumnFamily</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.417">deleteColumnFamily</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.418">deleteColumnFamily</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                 byte[]&nbsp;columnFamily)
                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Delete a column family from a table. Synchronous operation. Use
@@ -2002,7 +2008,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteColumnFamilyAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.435">deleteColumnFamilyAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.ht [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.436">deleteColumnFamilyAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.ht [...]
                                      byte[]&nbsp;columnFamily)
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Delete a column family from a table. Asynchronous operation.
@@ -2028,7 +2034,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>modifyColumnFamily</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.446">modifyColumnFamily</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.447">modifyColumnFamily</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                 <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)
                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Modify an existing column family on a table. Synchronous operation. Use
@@ -2049,7 +2055,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>modifyColumnFamilyAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.465">modifyColumnFamilyAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.ht [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.466">modifyColumnFamilyAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.ht [...]
                                      <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Modify an existing column family on a table. Asynchronous operation.
@@ -2075,7 +2081,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegions</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.474">getRegions</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.475">getRegions</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop [...]
                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get all the online regions on a region server.</div>
 <dl>
@@ -2092,7 +2098,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>flush</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.482">flush</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.483">flush</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Flush a table. Synchronous operation.</div>
 <dl>
@@ -2109,7 +2115,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>flushRegion</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.490">flushRegion</a>(byte[]&nbsp;regionName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.491">flushRegion</a>(byte[]&nbsp;regionName)
           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Flush an individual region. Synchronous operation.</div>
 <dl>
@@ -2126,7 +2132,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>flushRegionServer</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.497">flushRegionServer</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.498">flushRegionServer</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)
                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Flush all regions on the region server. Synchronous operation.</div>
 <dl>
@@ -2143,7 +2149,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>compact</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.507">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.508">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Compact a table. Asynchronous operation in that this method requests that a
  Compaction run and then it returns. It does not wait on the completion of Compaction
@@ -2162,7 +2168,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>compactRegion</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.517">compactRegion</a>(byte[]&nbsp;regionName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.518">compactRegion</a>(byte[]&nbsp;regionName)
             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Compact an individual region. Asynchronous operation in that this method requests that a
  Compaction run and then it returns. It does not wait on the completion of Compaction
@@ -2181,7 +2187,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>compact</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.528">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.529">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
              byte[]&nbsp;columnFamily)
       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Compact a column family within a table. Asynchronous operation in that this method requests
@@ -2202,7 +2208,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>compactRegion</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.540">compactRegion</a>(byte[]&nbsp;regionName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.541">compactRegion</a>(byte[]&nbsp;regionName,
                    byte[]&nbsp;columnFamily)
             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Compact a column family within a region. Asynchronous operation in that this method requests
@@ -2223,7 +2229,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>compact</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.553">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.554">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
              <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)
       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
@@ -2246,7 +2252,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>compact</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.567">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.568">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
              byte[]&nbsp;columnFamily,
              <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)
       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
@@ -2271,7 +2277,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompact</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.578">majorCompact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.579">majorCompact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Major compact a table. Asynchronous operation in that this method requests
  that a Compaction run and then it returns. It does not wait on the completion of Compaction
@@ -2290,7 +2296,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompactRegion</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.588">majorCompactRegion</a>(byte[]&nbsp;regionName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.589">majorCompactRegion</a>(byte[]&nbsp;regionName)
                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Major compact a table or an individual region. Asynchronous operation in that this method requests
  that a Compaction run and then it returns. It does not wait on the completion of Compaction
@@ -2309,7 +2315,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompact</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.599">majorCompact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.600">majorCompact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   byte[]&nbsp;columnFamily)
            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Major compact a column family within a table. Asynchronous operation in that this method requests
@@ -2330,7 +2336,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompactRegion</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.611">majorCompactRegion</a>(byte[]&nbsp;regionName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.612">majorCompactRegion</a>(byte[]&nbsp;regionName,
                         byte[]&nbsp;columnFamily)
                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Major compact a column family within region. Asynchronous operation in that this method requests
@@ -2351,7 +2357,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompact</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.624">majorCompact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.625">majorCompact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)
            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
@@ -2374,7 +2380,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompact</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.638">majorCompact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.639">majorCompact</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   byte[]&nbsp;columnFamily,
                   <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)
            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
@@ -2399,7 +2405,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>compactionSwitch</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html [...]
                                          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;serverNamesList)
                                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Turn the compaction on or off. Disabling compactions will also interrupt any currently ongoing
@@ -2423,7 +2429,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>compactRegionServer</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.661">compactRegionServer</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.662">compactRegionServer</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Compact all regions on the region server. Asynchronous operation in that this method requests
  that a Compaction run and then it returns. It does not wait on the completion of Compaction (it
@@ -2442,7 +2448,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompactRegionServer</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.670">majorCompactRegionServer</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.671">majorCompactRegionServer</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)
                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Major compact all regions on the region server. Asynchronous operation in that this method
  requests that a Compaction run and then it returns. It does not wait on the completion of
@@ -2461,7 +2467,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>move</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.685">move</a>(byte[]&nbsp;encodedRegionName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.686">move</a>(byte[]&nbsp;encodedRegionName,
           byte[]&nbsp;destServerName)
    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Move the region <code>r</code> to <code>dest</code>.</div>
@@ -2486,7 +2492,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>assign</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.691">assign</a>(byte[]&nbsp;regionName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.692">assign</a>(byte[]&nbsp;regionName)
      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Assign a Region.</div>
 <dl>
@@ -2503,7 +2509,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>unassign</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.702">unassign</a>(byte[]&nbsp;regionName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.703">unassign</a>(byte[]&nbsp;regionName,
               boolean&nbsp;force)
        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Unassign a region from current hosting regionserver.  Region will then be assigned to a
@@ -2524,7 +2530,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>offline</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.715">offline</a>(byte[]&nbsp;regionName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.716">offline</a>(byte[]&nbsp;regionName)
       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Offline specified region from master's in-memory state. It will not attempt to reassign the
  region as in unassign. This API can be used when a region not served by any region server and
@@ -2545,7 +2551,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>balancerSwitch</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.724">balancerSwitch</a>(boolean&nbsp;onOrOff,
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.725">balancerSwitch</a>(boolean&nbsp;onOrOff,
                        boolean&nbsp;synchronous)
                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Turn the load balancer on or off.</div>
@@ -2567,7 +2573,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>balance</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.733">balance</a>()
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.734">balance</a>()
          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Invoke the balancer.  Will run the balancer and if regions to move, it will go ahead and do the
  reassignments.  Can NOT run for various reasons.  Check logs.</div>
@@ -2585,7 +2591,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>balance</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.743">balance</a>(boolean&nbsp;force)
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.744">balance</a>(boolean&nbsp;force)
          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Invoke the balancer.  Will run the balancer and if regions to move, it will
  go ahead and do the reassignments. If there is region in transition, force parameter of true
@@ -2607,7 +2613,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>isBalancerEnabled</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.750">isBalancerEnabled</a>()
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.751">isBalancerEnabled</a>()
                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Query the current state of the balancer.</div>
 <dl>
@@ -2624,7 +2630,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>clearBlockCache</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/CacheEvictionStats.html" title="class in org.apache.hadoop.hbase">CacheEvictionStats</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.762">clearBlockCache</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre><a href="../../../../../org/apache/hadoop/hbase/CacheEvictionStats.html" title="class in org.apache.hadoop.hbase">CacheEvictionStats</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.763">clearBlockCache</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Clear all the blocks corresponding to this table from BlockCache. For expert-admins.
  Calling this API will drop all the cached blocks specific to a table from BlockCache.
@@ -2646,7 +2652,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>normalize</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.769">normalize</a>()
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.770">normalize</a>()
            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Invoke region normalizer. Can NOT run for various reasons.  Check logs.</div>
 <dl>
@@ -2663,7 +2669,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>isNormalizerEnabled</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.776">isNormalizerEnabled</a>()
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.777">isNormalizerEnabled</a>()
                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Query the current state of the region normalizer.</div>
 <dl>
@@ -2680,7 +2686,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>normalizerSwitch</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.783">normalizerSwitch</a>(boolean&nbsp;on)
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.784">normalizerSwitch</a>(boolean&nbsp;on)
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Turn region normalizer on or off.</div>
 <dl>
@@ -2697,7 +2703,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>catalogJanitorSwitch</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.791">catalogJanitorSwitch</a>(boolean&nbsp;onOrOff)
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.792">catalogJanitorSwitch</a>(boolean&nbsp;onOrOff)
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Enable/Disable the catalog janitor/</div>
 <dl>
@@ -2716,7 +2722,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>runCatalogJanitor</h4>
-<pre>int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.798">runCatalogJanitor</a>()
+<pre>int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.799">runCatalogJanitor</a>()
                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Ask for a scan of the catalog table.</div>
 <dl>
@@ -2733,7 +2739,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>isCatalogJanitorEnabled</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.804">isCatalogJanitorEnabled</a>()
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.805">isCatalogJanitorEnabled</a>()
                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Query on the catalog janitor state (Enabled/Disabled?).</div>
 <dl>
@@ -2748,7 +2754,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>cleanerChoreSwitch</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.813">cleanerChoreSwitch</a>(boolean&nbsp;onOrOff)
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.814">cleanerChoreSwitch</a>(boolean&nbsp;onOrOff)
                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Enable/Disable the cleaner chore.</div>
 <dl>
@@ -2767,7 +2773,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>runCleanerChore</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.821">runCleanerChore</a>()
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.822">runCleanerChore</a>()
                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Ask for cleaner chore to run.</div>
 <dl>
@@ -2784,7 +2790,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>isCleanerChoreEnabled</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.828">isCleanerChoreEnabled</a>()
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.829">isCleanerChoreEnabled</a>()
                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Query on the cleaner chore state (Enabled/Disabled?).</div>
 <dl>
@@ -2799,7 +2805,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>mergeRegionsAsync</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.838">mergeRegionsAsync</a>(byte[]&nbsp;nameOfRegionA,
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.839">mergeRegionsAsync</a>(byte[]&nbsp;nameOfRegionA,
                                        byte[]&nbsp;nameOfRegionB,
                                        boolean&nbsp;forcible)
                                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -2821,7 +2827,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>mergeRegionsAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.856">mergeRegionsAsync</a>(byte[][]&nbsp;nameofRegionsToMerge,
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.857">mergeRegionsAsync</a>(byte[][]&nbsp;nameofRegionsToMerge,
                                boolean&nbsp;forcible)
                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Merge regions. Asynchronous operation.
@@ -2845,7 +2851,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>split</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.865">split</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.866">split</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Split a table. The method will execute split action for each region in table.
  Asynchronous operation.</div>
@@ -2863,7 +2869,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>split</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.874">split</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.875">split</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
            byte[]&nbsp;splitPoint)
     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Split a table. Asynchronous operation.</div>
@@ -2882,7 +2888,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>splitRegionAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.882">splitRegionAsync</a>(byte[]&nbsp;regionName,
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.883">splitRegionAsync</a>(byte[]&nbsp;regionName,
                               byte[]&nbsp;splitPoint)
                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Split an individual region. Asynchronous operation.</div>
@@ -2901,7 +2907,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>modifyTable</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.889">modifyTable</a>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;td)
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.890">modifyTable</a>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;td)
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Modify an existing table, more IRB friendly version.</div>
 <dl>
@@ -2918,7 +2924,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>modifyTableAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.904">modifyTableAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescrip [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.905">modifyTableAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/client/TableDescrip [...]
                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Modify an existing table, more IRB (ruby) friendly version. Asynchronous operation. This means
  that it may be a while before your schema change is updated across all of the table. You can
@@ -2942,7 +2948,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>shutdown</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.913">shutdown</a>()
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.914">shutdown</a>()
        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Shuts down the HBase cluster.
  <p/>
@@ -2960,7 +2966,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>stopMaster</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.923">stopMaster</a>()
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.924">stopMaster</a>()
          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Shuts down the current HBase master only. Does not shutdown the cluster.
  <p/>
@@ -2980,7 +2986,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>isMasterInMaintenanceMode</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.930">isMasterInMaintenanceMode</a>()
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.931">isMasterInMaintenanceMode</a>()
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Check whether Master is in maintenance mode.</div>
 <dl>
@@ -2995,7 +3001,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>stopRegionServer</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.939">stopRegionServer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostnamePort)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.940">stopRegionServer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostnamePort)
                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Stop the designated regionserver.</div>
 <dl>
@@ -3013,7 +3019,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getClusterMetrics</h4>
-<pre>default&nbsp;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.955">getClusterMetrics</a>()
+<pre>default&nbsp;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.956">getClusterMetrics</a>()
                                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get whole cluster metrics, containing status about:
  <pre>
@@ -3039,7 +3045,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getClusterMetrics</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.964">getClusterMetrics</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;org.apache.hadoop.hbase.ClusterMetrics.Option&gt;&nbsp;options)
+<pre><a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.965">getClusterMetrics</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;org.apache.hadoop.hbase.ClusterMetrics.Option&gt;&nbsp;options)
                           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get cluster status with a set of <code>ClusterMetrics.Option</code> to get desired status.</div>
 <dl>
@@ -3056,7 +3062,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getMaster</h4>
-<pre>default&nbsp;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.970">getMaster</a>()
+<pre>default&nbsp;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.971">getMaster</a>()
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3072,7 +3078,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getBackupMasters</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.978">getBackupMasters</a>()
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.979">getBackupMasters</a>()
                                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3088,7 +3094,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegionServers</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.986">getRegionServers</a>()
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.987">getRegionServers</a>()
                                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3104,7 +3110,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegionMetrics</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.997">getRegionMetrics</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.ap [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.998">getRegionMetrics</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.ap [...]
                                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get <a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase"><code>RegionMetrics</code></a> of all regions hosted on a regionserver.</div>
 <dl>
@@ -3123,7 +3129,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegionMetrics</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1009">getRegionMetrics</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop. [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1010">getRegionMetrics</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop. [...]
                                      <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get <a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase"><code>RegionMetrics</code></a> of all regions hosted on a regionserver for a table.</div>
@@ -3144,7 +3150,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getConfiguration</h4>
-<pre>org.apache.hadoop.conf.Configuration&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1015">getConfiguration</a>()</pre>
+<pre>org.apache.hadoop.conf.Configuration&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1016">getConfiguration</a>()</pre>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>Configuration used by the instance.</dd>
@@ -3157,7 +3163,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>createNamespace</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1022">createNamespace</a>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1023">createNamespace</a>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Create a new namespace. Blocks until namespace has been successfully created or an exception is
  thrown.</div>
@@ -3175,7 +3181,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>createNamespaceAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1032">createNamespaceAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescr [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1033">createNamespaceAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescr [...]
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Create a new namespace.</div>
 <dl>
@@ -3195,7 +3201,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>modifyNamespace</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1039">modifyNamespace</a>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1040">modifyNamespace</a>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Modify an existing namespace. Blocks until namespace has been successfully modified or an
  exception is thrown.</div>
@@ -3213,7 +3219,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>modifyNamespaceAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1049">modifyNamespaceAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescr [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1050">modifyNamespaceAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescr [...]
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Modify an existing namespace.</div>
 <dl>
@@ -3233,7 +3239,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteNamespace</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1056">deleteNamespace</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1057">deleteNamespace</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Delete an existing namespace. Only empty namespaces (no tables) can be removed. Blocks until
  namespace has been successfully deleted or an exception is thrown.</div>
@@ -3251,7 +3257,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteNamespaceAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1066">deleteNamespaceAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/S [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1067">deleteNamespaceAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/S [...]
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Delete an existing namespace. Only empty namespaces (no tables) can be removed.</div>
 <dl>
@@ -3271,7 +3277,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getNamespaceDescriptor</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1075">getNamespaceDescriptor</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
+<pre><a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1076">getNamespaceDescriptor</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
                                     throws <a href="../../../../../org/apache/hadoop/hbase/NamespaceNotFoundException.html" title="class in org.apache.hadoop.hbase">NamespaceNotFoundException</a>,
                                            <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get a namespace descriptor by name.</div>
@@ -3292,7 +3298,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>listNamespaceDescriptors</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1082">listNamespaceDescriptors</a>()
+<pre><a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1083">listNamespaceDescriptors</a>()
                                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List available namespace descriptors.</div>
 <dl>
@@ -3309,7 +3315,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableDescriptorsByNamespace</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1089">listTableDescriptorsByNamespace</a>(byte[]&nbsp;name)
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1090">listTableDescriptorsByNamespace</a>(byte[]&nbsp;name)
                                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get list of table descriptors by namespace.</div>
 <dl>
@@ -3328,7 +3334,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableNamesByNamespace</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1096">listTableNamesByNamespace</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
+<pre><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1097">listTableNamesByNamespace</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get list of table names by namespace.</div>
 <dl>
@@ -3347,7 +3353,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegions</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1104">getRegions</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1105">getRegions</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop [...]
                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get the regions of a given table.</div>
 <dl>
@@ -3366,7 +3372,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>close</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1107">close</a>()</pre>
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1108">close</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
@@ -3381,7 +3387,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableDescriptors</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1116">listTableDescriptors</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-ext [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1117">listTableDescriptors</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-ext [...]
                                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get tableDescriptors.</div>
 <dl>
@@ -3401,7 +3407,7 @@ extends org.apache.hadoop.hbase.Abortable, <a href="https://docs.oracle.com/java
 <li class="blockList">
 <h4>abortProcedure</h4>
 <pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
-default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1131">abortProcedure</a>(long&nbsp;procId,
+default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1132">abortProcedure</a>(long&nbsp;procId,
                                            boolean&nbsp;mayInterruptIfRunning)
                                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Since 2.1.1 -- to be removed.</span></div>
@@ -3427,7 +3433,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <li class="blockList">
 <h4>abortProcedureAsync</h4>
 <pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
-<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1151">abortProcedureAsync</a>(long&nbsp;procId,
+<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1152">abortProcedureAsync</a>(long&nbsp;procId,
                                                 boolean&nbsp;mayInterruptIfRunning)
                                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Since 2.1.1 -- to be removed.</span></div>
@@ -3454,7 +3460,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getProcedures</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1159">getProcedures</a>()
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1160">getProcedures</a>()
               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get procedures.</div>
 <dl>
@@ -3471,7 +3477,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getLocks</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1166">getLocks</a>()
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1167">getLocks</a>()
          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get locks.</div>
 <dl>
@@ -3488,7 +3494,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>rollWALWriter</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1179">rollWALWriter</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1180">rollWALWriter</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)
             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                    <a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/FailedLogCloseException.html" title="class in org.apache.hadoop.hbase.regionserver.wal">FailedLogCloseException</a></pre>
 <div class="block">Roll the log writer. I.e. for filesystem based write ahead logs, start writing to a new file.
@@ -3511,7 +3517,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getMasterCoprocessorNames</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1186">getMasterCoprocessorNames</a>()
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1187">getMasterCoprocessorNames</a>()
                                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Helper that delegates to getClusterMetrics().getMasterCoprocessorNames().</div>
 <dl>
@@ -3530,7 +3536,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getCompactionState</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1199">getCompactionState</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre><a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1200">getCompactionState</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get the current compaction state of a table. It could be in a major compaction, a minor
  compaction, both, or none.</div>
@@ -3550,7 +3556,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getCompactionState</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1209">getCompactionState</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre><a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1210">getCompactionState</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                    <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)
                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get the current compaction state of a table. It could be in a compaction, or none.</div>
@@ -3571,7 +3577,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getCompactionStateForRegion</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1220">getCompactionStateForRegion</a>(byte[]&nbsp;regionName)
+<pre><a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1221">getCompactionStateForRegion</a>(byte[]&nbsp;regionName)
                                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get the current compaction state of region. It could be in a major compaction, a minor
  compaction, both, or none.</div>
@@ -3591,7 +3597,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getLastMajorCompactionTimestamp</h4>
-<pre>long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1232">getLastMajorCompactionTimestamp</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1233">getLastMajorCompactionTimestamp</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get the timestamp of the last major compaction for the passed table
 
@@ -3613,7 +3619,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getLastMajorCompactionTimestampForRegion</h4>
-<pre>long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1244">getLastMajorCompactionTimestampForRegion</a>(byte[]&nbsp;regionName)
+<pre>long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1245">getLastMajorCompactionTimestampForRegion</a>(byte[]&nbsp;regionName)
                                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get the timestamp of the last major compaction for the passed region.
 
@@ -3635,7 +3641,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>snapshot</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1260">snapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1261">snapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
                       <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                       <a href="../../../../../org/apache/hadoop/hbase/snapshot/SnapshotCreationException.html" title="class in org.apache.hadoop.hbase.snapshot">SnapshotCreationException</a>,
@@ -3664,7 +3670,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>snapshot</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1279">snapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1280">snapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
                       <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                       <a href="../../../../../org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client">SnapshotType</a>&nbsp;type)
                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
@@ -3694,7 +3700,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>snapshot</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1300">snapshot</a>(<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1301">snapshot</a>(<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)
        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
               <a href="../../../../../org/apache/hadoop/hbase/snapshot/SnapshotCreationException.html" title="class in org.apache.hadoop.hbase.snapshot">SnapshotCreationException</a>,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></pre>
@@ -3724,7 +3730,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>snapshotAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1312">snapshotAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescri [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1313">snapshotAsync</a>(<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescri [...]
                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                            <a href="../../../../../org/apache/hadoop/hbase/snapshot/SnapshotCreationException.html" title="class in org.apache.hadoop.hbase.snapshot">SnapshotCreationException</a></pre>
 <div class="block">Take a snapshot without waiting for the server to complete that snapshot (asynchronous) Only a
@@ -3745,7 +3751,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>isSnapshotFinished</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1331">isSnapshotFinished</a>(<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1332">isSnapshotFinished</a>(<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)
                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                            <a href="../../../../../org/apache/hadoop/hbase/snapshot/HBaseSnapshotException.html" title="class in org.apache.hadoop.hbase.snapshot">HBaseSnapshotException</a>,
                            <a href="../../../../../org/apache/hadoop/hbase/snapshot/UnknownSnapshotException.html" title="class in org.apache.hadoop.hbase.snapshot">UnknownSnapshotException</a></pre>
@@ -3774,7 +3780,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>restoreSnapshot</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1345">restoreSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1346">restoreSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName)
               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                      <a href="../../../../../org/apache/hadoop/hbase/snapshot/RestoreSnapshotException.html" title="class in org.apache.hadoop.hbase.snapshot">RestoreSnapshotException</a></pre>
 <div class="block">Restore the specified snapshot on the original table. (The table must be disabled) If the
@@ -3798,7 +3804,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>restoreSnapshot</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1360">restoreSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1361">restoreSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
                              boolean&nbsp;takeFailSafeSnapshot)
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                              <a href="../../../../../org/apache/hadoop/hbase/snapshot/RestoreSnapshotException.html" title="class in org.apache.hadoop.hbase.snapshot">RestoreSnapshotException</a></pre>
@@ -3825,7 +3831,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>restoreSnapshot</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1379">restoreSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1380">restoreSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
                      boolean&nbsp;takeFailSafeSnapshot,
                      boolean&nbsp;restoreAcl)
               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
@@ -3854,7 +3860,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>cloneSnapshot</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1391">cloneSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1392">cloneSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
                            <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                            <a href="../../../../../org/apache/hadoop/hbase/TableExistsException.html" title="class in org.apache.hadoop.hbase">TableExistsException</a>,
@@ -3878,7 +3884,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>cloneSnapshot</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1406">cloneSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1407">cloneSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
                            <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                            boolean&nbsp;restoreAcl)
                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
@@ -3904,7 +3910,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>cloneSnapshotAsync</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1425">cloneSnapshotAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/ [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1426">cloneSnapshotAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/ [...]
                                         <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                                         <a href="../../../../../org/apache/hadoop/hbase/TableExistsException.html" title="class in org.apache.hadoop.hbase">TableExistsException</a></pre>
@@ -3932,7 +3938,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>cloneSnapshotAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1440">cloneSnapshotAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Str [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1441">cloneSnapshotAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Str [...]
                                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                 boolean&nbsp;restoreAcl)
                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
@@ -3958,7 +3964,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>execProcedure</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1453">execProcedure</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;signature,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1454">execProcedure</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;signature,
                    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;instance,
                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;props)
             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -3981,7 +3987,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>execProcedureWithReturn</h4>
-<pre>byte[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1467">execProcedureWithReturn</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;signature,
+<pre>byte[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1468">execProcedureWithReturn</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;signature,
                                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;instance,
                                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;props)
                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -4006,7 +4012,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>isProcedureFinished</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1481">isProcedureFinished</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;signature,
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1482">isProcedureFinished</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;signature,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;instance,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;props)
                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -4031,7 +4037,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>listSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1490">listSnapshots</a>()
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1491">listSnapshots</a>()
                                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List completed snapshots.</div>
 <dl>
@@ -4048,7 +4054,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>listSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1499">listSnapshots</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html? [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1500">listSnapshots</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html? [...]
                                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List all the completed snapshots matching the given pattern.</div>
 <dl>
@@ -4067,7 +4073,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1509">listTableSnapshots</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern. [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1510">listTableSnapshots</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern. [...]
                                              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;snapshotNamePattern)
                                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List all the completed snapshots matching the given table name regular expression and snapshot
@@ -4089,7 +4095,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteSnapshot</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1518">deleteSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1519">deleteSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName)
              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Delete an existing snapshot.</div>
 <dl>
@@ -4106,7 +4112,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteSnapshots</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1526">deleteSnapshots</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1527">deleteSnapshots</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)
               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Delete existing snapshots whose names match the pattern passed.</div>
 <dl>
@@ -4123,7 +4129,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteTableSnapshots</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1535">deleteTableSnapshots</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1536">deleteTableSnapshots</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern,
                           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;snapshotNamePattern)
                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Delete all existing snapshots matching the given table name regular expression and snapshot
@@ -4143,7 +4149,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>setQuota</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1544">setQuota</a>(<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;quota)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1545">setQuota</a>(<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;quota)
        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Apply the new quota settings.</div>
 <dl>
@@ -4160,7 +4166,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getQuota</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1552">getQuota</a>(<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apac [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1553">getQuota</a>(<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apac [...]
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List the quotas based on the filter.</div>
 <dl>
@@ -4179,7 +4185,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>coprocessorService</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/ipc/CoprocessorRpcChannel.html" title="interface in org.apache.hadoop.hbase.ipc">CoprocessorRpcChannel</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1570">coprocessorService</a>()</pre>
+<pre><a href="../../../../../org/apache/hadoop/hbase/ipc/CoprocessorRpcChannel.html" title="interface in org.apache.hadoop.hbase.ipc">CoprocessorRpcChannel</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1571">coprocessorService</a>()</pre>
 <div class="block">Creates and returns a <code>RpcChannel</code> instance connected to the active
  master. <p> The obtained <code>RpcChannel</code> instance can be used to access
  a published coprocessor <code>Service</code> using standard protobuf service
@@ -4204,7 +4210,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>coprocessorService</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/ipc/CoprocessorRpcChannel.html" title="interface in org.apache.hadoop.hbase.ipc">CoprocessorRpcChannel</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1595">coprocessorService</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</pre>
+<pre><a href="../../../../../org/apache/hadoop/hbase/ipc/CoprocessorRpcChannel.html" title="interface in org.apache.hadoop.hbase.ipc">CoprocessorRpcChannel</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1596">coprocessorService</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</pre>
 <div class="block">Creates and returns a <code>RpcChannel</code> instance
  connected to the passed region server.
 
@@ -4236,7 +4242,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>updateConfiguration</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1604">updateConfiguration</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1605">updateConfiguration</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server)
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Update the configuration and trigger an online config change
  on the regionserver.</div>
@@ -4254,7 +4260,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>updateConfiguration</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1612">updateConfiguration</a>()
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1613">updateConfiguration</a>()
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Update the configuration and trigger an online config change
  on all the regionservers.</div>
@@ -4270,7 +4276,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getMasterInfoPort</h4>
-<pre>default&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1619">getMasterInfoPort</a>()
+<pre>default&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1620">getMasterInfoPort</a>()
                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get the info port of the current master if one is available.</div>
 <dl>
@@ -4287,7 +4293,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getSecurityCapabilities</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/security/SecurityCapability.html" title="enum in org.apache.hadoop.hbase.client.security">SecurityCapability</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1628">getSecurityCapabilities</a>()
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/security/SecurityCapability.html" title="enum in org.apache.hadoop.hbase.client.security">SecurityCapability</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1629">getSecurityCapabilities</a>()
                                           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Return the set of supported security capabilities.</div>
 <dl>
@@ -4303,7 +4309,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>splitSwitch</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1637">splitSwitch</a>(boolean&nbsp;enabled,
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1638">splitSwitch</a>(boolean&nbsp;enabled,
                     boolean&nbsp;synchronous)
              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Turn the split switch on or off.</div>
@@ -4325,7 +4331,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>mergeSwitch</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1646">mergeSwitch</a>(boolean&nbsp;enabled,
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1647">mergeSwitch</a>(boolean&nbsp;enabled,
                     boolean&nbsp;synchronous)
              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Turn the merge switch on or off.</div>
@@ -4347,7 +4353,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>isSplitEnabled</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1652">isSplitEnabled</a>()
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1653">isSplitEnabled</a>()
                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Query the current state of the split switch.</div>
 <dl>
@@ -4364,7 +4370,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>isMergeEnabled</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1658">isMergeEnabled</a>()
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1659">isMergeEnabled</a>()
                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Query the current state of the merge switch.</div>
 <dl>
@@ -4381,7 +4387,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>addReplicationPeer</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1666">addReplicationPeer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1667">addReplicationPeer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                 <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)
                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Add a new replication peer for replicating data to slave cluster.</div>
@@ -4400,7 +4406,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>addReplicationPeer</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1678">addReplicationPeer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1679">addReplicationPeer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                 <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
                                 boolean&nbsp;enabled)
                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -4421,7 +4427,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>addReplicationPeerAsync</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1695">addReplicationPeerAsync</a>(<a href="https://docs.oracle.com/javase/8/docs [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1696">addReplicationPeerAsync</a>(<a href="https://docs.oracle.com/javase/8/docs [...]
                                              <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)
                                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Add a new replication peer but does not block and wait for it.
@@ -4446,7 +4452,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>addReplicationPeerAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1712">addReplicationPeerAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lan [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1713">addReplicationPeerAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lan [...]
                                      <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
                                      boolean&nbsp;enabled)
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -4473,7 +4479,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>removeReplicationPeer</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1720">removeReplicationPeer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1721">removeReplicationPeer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)
                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Remove a peer and stop the replication.</div>
 <dl>
@@ -4490,7 +4496,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>removeReplicationPeerAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1735">removeReplicationPeerAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/ [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1736">removeReplicationPeerAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/ [...]
                                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Remove a replication peer but does not block and wait for it.
  <p>
@@ -4513,7 +4519,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>enableReplicationPeer</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1742">enableReplicationPeer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1743">enableReplicationPeer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)
                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Restart the replication stream to the specified peer.</div>
 <dl>
@@ -4530,7 +4536,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>enableReplicationPeerAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1756">enableReplicationPeerAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/ [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1757">enableReplicationPeerAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/ [...]
                                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Enable a replication peer but does not block and wait for it.
  <p>
@@ -4553,7 +4559,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>disableReplicationPeer</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1763">disableReplicationPeer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1764">disableReplicationPeer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)
                              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Stop the replication stream to the specified peer.</div>
 <dl>
@@ -4570,7 +4576,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>disableReplicationPeerAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1777">disableReplicationPeerAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1778">disableReplicationPeerAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java [...]
                                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Disable a replication peer but does not block and wait for it.
  <p/>
@@ -4593,7 +4599,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getReplicationPeerConfig</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1785">getReplicationPeerConfig</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)
+<pre><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1786">getReplicationPeerConfig</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)
                                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Returns the configured ReplicationPeerConfig for the specified peer.</div>
 <dl>
@@ -4612,7 +4618,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>updateReplicationPeerConfig</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1793">updateReplicationPeerConfig</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1794">updateReplicationPeerConfig</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                          <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)
                                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Update the peerConfig for the specified peer.</div>
@@ -4631,7 +4637,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>updateReplicationPeerConfigAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1810">updateReplicationPeerConfigAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1811">updateReplicationPeerConfigAsync</a>(<a href="https://docs.oracle.com/javase/8/docs/api [...]
                                               <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)
                                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Update the peerConfig for the specified peer but does not block and wait for it.
@@ -4656,7 +4662,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>appendReplicationPeerTableCFs</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1820">appendReplicationPeerTableCFs</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1821">appendReplicationPeerTableCFs</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id,
                                            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api [...]
                                     throws <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationException.html" title="class in org.apache.hadoop.hbase.replication">ReplicationException</a>,
                                            <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -4677,7 +4683,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>removeReplicationPeerTableCFs</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1838">removeReplicationPeerTableCFs</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1839">removeReplicationPeerTableCFs</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id,
                                            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api [...]
                                     throws <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationException.html" title="class in org.apache.hadoop.hbase.replication">ReplicationException</a>,
                                            <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -4698,7 +4704,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>listReplicationPeers</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1854">listReplicationPeers</a>()
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1855">listReplicationPeers</a>()
                                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Return a list of replication peers.</div>
 <dl>
@@ -4715,7 +4721,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>listReplicationPeers</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1862">listReplicationPeers</a>(<a href="https://docs.oracle.com/javase/8/docs/ap [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1863">listReplicationPeers</a>(<a href="https://docs.oracle.com/javase/8/docs/ap [...]
                                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Return a list of replication peers.</div>
 <dl>
@@ -4734,7 +4740,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>transitReplicationPeerSyncReplicationState</h4>
-<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1870">transitReplicationPeerSyncReplicationState</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+<pre>default&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1871">transitReplicationPeerSyncReplicationState</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                                         <a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;state)
                                                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Transit current cluster to a new state in a synchronous replication peer.</div>
@@ -4753,7 +4759,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>transitReplicationPeerSyncReplicationStateAsync</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1887">transitReplicationPeerSyncReplicationStateAsync</a>(<a href="https://docs.oracle.com/ja [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1888">transitReplicationPeerSyncReplicationStateAsync</a>(<a href="https://docs.oracle.com/ja [...]
                                                              <a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;state)
                                                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Transit current cluster to a new state in a synchronous replication peer. But does not block
@@ -4777,7 +4783,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getReplicationPeerSyncReplicationState</h4>
-<pre>default&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1896">getReplicationPeerSyncReplicationState</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)
+<pre>default&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1897">getReplicationPeerSyncReplicationState</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)
                                                              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get the current cluster state in a synchronous replication peer.</div>
 <dl>
@@ -4796,7 +4802,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>decommissionRegionServers</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1913">decommissionRegionServers</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1914">decommissionRegionServers</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
                                boolean&nbsp;offload)
                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Mark region server(s) as decommissioned to prevent additional regions from getting
@@ -4818,7 +4824,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>listDecommissionedRegionServers</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1919">listDecommissionedRegionServers</a>()
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1920">listDecommissionedRegionServers</a>()
                                           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List region servers marked as decommissioned, which can not be assigned regions.</div>
 <dl>
@@ -4835,7 +4841,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>recommissionRegionServer</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1928">recommissionRegionServer</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1929">recommissionRegionServer</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
                               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;encodedRegionNames)
                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Remove decommission marker from a region server to allow regions assignments.
@@ -4856,7 +4862,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>listReplicatedTableCFs</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/replication/TableCFs.html" title="class in org.apache.hadoop.hbase.client.replication">TableCFs</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1935">listReplicatedTableCFs</a>()
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/replication/TableCFs.html" title="class in org.apache.hadoop.hbase.client.replication">TableCFs</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1936">listReplicatedTableCFs</a>()
                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Find all table and column families that are replicated from this cluster</div>
 <dl>
@@ -4873,7 +4879,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>enableTableReplication</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1942">enableTableReplication</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1943">enableTableReplication</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Enable a table's replication switch.</div>
 <dl>
@@ -4890,7 +4896,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>disableTableReplication</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1949">disableTableReplication</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1950">disableTableReplication</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Disable a table's replication switch.</div>
 <dl>
@@ -4907,7 +4913,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>clearCompactionQueues</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1958">clearCompactionQueues</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1959">clearCompactionQueues</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;queues)
                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
@@ -4928,7 +4934,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>listDeadServers</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1965">listDeadServers</a>()
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1966">listDeadServers</a>()
                                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">List dead region servers.</div>
 <dl>
@@ -4945,7 +4951,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>clearDeadServers</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1975">clearDeadServers</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or inte [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1976">clearDeadServers</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or inte [...]
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Clear dead region servers from master.</div>
 <dl>
@@ -4964,7 +4970,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>cloneTableSchema</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1984">cloneTableSchema</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1985">cloneTableSchema</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                       <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;newTableName,
                       boolean&nbsp;preserveSplits)
                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -4985,7 +4991,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>switchRpcThrottle</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1992">switchRpcThrottle</a>(boolean&nbsp;enable)
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1993">switchRpcThrottle</a>(boolean&nbsp;enable)
                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Switch the rpc throttle enable state.</div>
 <dl>
@@ -5004,7 +5010,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>isRpcThrottleEnabled</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1998">isRpcThrottleEnabled</a>()
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.1999">isRpcThrottleEnabled</a>()
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Get if the rpc throttle is enabled.</div>
 <dl>
@@ -5021,7 +5027,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>exceedThrottleQuotaSwitch</h4>
-<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.2006">exceedThrottleQuotaSwitch</a>(boolean&nbsp;enable)
+<pre>boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.2007">exceedThrottleQuotaSwitch</a>(boolean&nbsp;enable)
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Switch the exceed throttle quota. If enabled, user/table/namespace throttle quota
  can be exceeded if region server has availble quota.</div>
@@ -5041,7 +5047,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getSpaceQuotaTableSizes</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.20 [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.20 [...]
                                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Fetches the table sizes on the filesystem as tracked by the HBase Master.</div>
 <dl>
@@ -5056,7 +5062,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegionServerSpaceQuotaSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,? extends <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/had [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,? extends <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/had [...]
                                                                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Fetches the observed <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas"><code>SpaceQuotaSnapshotView</code></a>s observed by a RegionServer.</div>
 <dl>
@@ -5071,7 +5077,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getCurrentSpaceQuotaSnapshot</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.2023">getCurrentSpaceQuotaSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;namespace)
+<pre><a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.2024">getCurrentSpaceQuotaSnapshot</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;namespace)
                                              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Returns the Master's view of a quota on the given <code>namespace</code> or null if the Master has
  no quota information on that namespace.</div>
@@ -5087,7 +5093,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>getCurrentSpaceQuotaSnapshot</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.2029">getCurrentSpaceQuotaSnapshot</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre><a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.2030">getCurrentSpaceQuotaSnapshot</a>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                                              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Returns the Master's view of a quota on the given <code>tableName</code> or null if the Master has
  no quota information on that table.</div>
@@ -5103,7 +5109,7 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <ul class="blockList">
 <li class="blockList">
 <h4>grant</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.2039">grant</a>(org.apache.hadoop.hbase.security.access.UserPermission&nbsp;userPermission,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.2040">grant</a>(org.apache.hadoop.hbase.security.access.UserPermission&nbsp;userPermission,
            boolean&nbsp;mergeExistingPermissions)
     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Grants user specific permissions</div>
@@ -5121,10 +5127,10 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 <a name="revoke-org.apache.hadoop.hbase.security.access.UserPermission-">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>revoke</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.2046">revoke</a>(org.apache.hadoop.hbase.security.access.UserPermission&nbsp;userPermission)
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.2047">revoke</a>(org.apache.hadoop.hbase.security.access.UserPermission&nbsp;userPermission)
      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Revokes user specific permissions</div>
 <dl>
@@ -5135,6 +5141,26 @@ default&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hba
 </dl>
 </li>
 </ul>
+<a name="getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getUserPermissions</h4>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.security.access.UserPermission&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Admin.html#line.2056">getUserPermissions</a>(org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest&nbsp;getUserPermissionsRequest)
+                                                                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">Get the global/namespace/table permissions for user</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>getUserPermissionsRequest</code> - A request contains which user, global, namespace or table
+          permissions needed</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The user and permission list</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if a remote or network exception occurs</dd>
+</dl>
+</li>
+</ul>
 </li>
 </ul>
 </li>
diff --git a/apidocs/org/apache/hadoop/hbase/client/AsyncAdmin.html b/apidocs/org/apache/hadoop/hbase/client/AsyncAdmin.html
index d039049..28e0555 100644
--- a/apidocs/org/apache/hadoop/hbase/client/AsyncAdmin.html
+++ b/apidocs/org/apache/hadoop/hbase/client/AsyncAdmin.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":38,"i1":6,"i2":18,"i3":6,"i4":6,"i5":6,"i6":18,"i7":6,"i8":18,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":18,"i16":6,"i17":6,"i18":18,"i19":18,"i20":6,"i21":6,"i22":6,"i23":6,"i24":6,"i25":6,"i26":6,"i27":6,"i28":6,"i29":6,"i30":6,"i31":6,"i32":6,"i33":6,"i34":6,"i35":6,"i36":6,"i37":6,"i38":6,"i39":6,"i40":6,"i41":6,"i42":6,"i43":6,"i44":6,"i45":6,"i46":6,"i47":6,"i48":6,"i49":6,"i50":6,"i51":6,"i52":6,"i53":18,"i54":6,"i55":6,"i56":18,"i57":6,"i58":6,"i59": [...]
+var methods = {"i0":38,"i1":6,"i2":18,"i3":6,"i4":6,"i5":6,"i6":18,"i7":6,"i8":18,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":18,"i16":6,"i17":6,"i18":18,"i19":18,"i20":6,"i21":6,"i22":6,"i23":6,"i24":6,"i25":6,"i26":6,"i27":6,"i28":6,"i29":6,"i30":6,"i31":6,"i32":6,"i33":6,"i34":6,"i35":6,"i36":6,"i37":6,"i38":6,"i39":6,"i40":6,"i41":6,"i42":6,"i43":6,"i44":6,"i45":6,"i46":6,"i47":6,"i48":6,"i49":6,"i50":6,"i51":6,"i52":6,"i53":18,"i54":6,"i55":6,"i56":18,"i57":6,"i58":6,"i59": [...]
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],16:["t5","Default Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -102,7 +102,7 @@ var activeTableTab = "activeTableTab";
 <hr>
 <br>
 <pre>@InterfaceAudience.Public
-public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.57">AsyncAdmin</a></pre>
+public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.58">AsyncAdmin</a></pre>
 <div class="block">The asynchronous administrative API for HBase.</div>
 <dl>
 <dt><span class="simpleTagLabel">Since:</span></dt>
@@ -638,49 +638,55 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 </td>
 </tr>
 <tr id="i81" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.security.access.UserPermission&gt;&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest&nbsp;getUserPermissionsRequest)</code>
+<div class="block">Get the global/namespace/table permissions for user</div>
+</td>
+</tr>
+<tr id="i82" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#grant-org.apache.hadoop.hbase.security.access.UserPermission-boolean-">grant</a></span>(org.apache.hadoop.hbase.security.access.UserPermission&nbsp;userPermission,
      boolean&nbsp;mergeExistingPermissions)</code>
 <div class="block">Grants user specific permissions</div>
 </td>
 </tr>
-<tr id="i82" class="altColor">
+<tr id="i83" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isBalancerEnabled--">isBalancerEnabled</a></span>()</code>
 <div class="block">Query the current state of the balancer.</div>
 </td>
 </tr>
-<tr id="i83" class="rowColor">
+<tr id="i84" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isCatalogJanitorEnabled--">isCatalogJanitorEnabled</a></span>()</code>
 <div class="block">Query on the catalog janitor state.</div>
 </td>
 </tr>
-<tr id="i84" class="altColor">
+<tr id="i85" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isCleanerChoreEnabled--">isCleanerChoreEnabled</a></span>()</code>
 <div class="block">Query the current state of the cleaner chore.</div>
 </td>
 </tr>
-<tr id="i85" class="rowColor">
+<tr id="i86" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isMasterInMaintenanceMode--">isMasterInMaintenanceMode</a></span>()</code>
 <div class="block">Check whether master is in maintenance mode</div>
 </td>
 </tr>
-<tr id="i86" class="altColor">
+<tr id="i87" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isMergeEnabled--">isMergeEnabled</a></span>()</code>
 <div class="block">Query the current state of the Merge switch.</div>
 </td>
 </tr>
-<tr id="i87" class="rowColor">
+<tr id="i88" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isNormalizerEnabled--">isNormalizerEnabled</a></span>()</code>
 <div class="block">Query the current state of the region normalizer</div>
 </td>
 </tr>
-<tr id="i88" class="altColor">
+<tr id="i89" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isProcedureFinished-java.lang.String-java.lang.String-java.util.Map-">isProcedureFinished</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;signature,
                    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;instance,
@@ -688,36 +694,27 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <div class="block">Check the current state of the specified procedure.</div>
 </td>
 </tr>
-<tr id="i89" class="rowColor">
+<tr id="i90" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isRpcThrottleEnabled--">isRpcThrottleEnabled</a></span>()</code>
 <div class="block">Get if the rpc throttle is enabled.</div>
 </td>
 </tr>
-<tr id="i90" class="altColor">
+<tr id="i91" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isSnapshotFinished-org.apache.hadoop.hbase.client.SnapshotDescription-">isSnapshotFinished</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>
 <div class="block">Check the current state of the passed snapshot.</div>
 </td>
 </tr>
-<tr id="i91" class="rowColor">
+<tr id="i92" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isSplitEnabled--">isSplitEnabled</a></span>()</code>
 <div class="block">Query the current state of the Split switch.</div>
 </td>
 </tr>
-<tr id="i92" class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr id="i93" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-byte:A:A-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                byte[][]&nbsp;splitKeys)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
-<div class="block"><span class="deprecationComment">Since 2.2.0. Will be removed in 3.0.0. Use <a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-"><code>isTableAvailable(TableName)</code></a></span></div>
-</div>
-</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr id="i94" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
@@ -1191,7 +1188,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>tableExists</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.64">tableExists</a>(<a href="../../../../../org/apache/hadoo [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.65">tableExists</a>(<a href="../../../../../org/apache/hadoo [...]
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>tableName</code> - Table to check.</dd>
@@ -1207,7 +1204,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableDescriptors</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor [...]
 <div class="block">List all the userspace tables.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -1221,7 +1218,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableDescriptors</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;& [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;& [...]
 <div class="block">List all the tables.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1237,7 +1234,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableDescriptors</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;& [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;& [...]
                                                               boolean&nbsp;includeSysTables)</pre>
 <div class="block">List all the tables matching the given pattern.</div>
 <dl>
@@ -1255,7 +1252,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableDescriptors</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;& [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;& [...]
 <div class="block">List specific tables including system tables.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1271,7 +1268,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableDescriptorsByNamespace</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;& [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;& [...]
 <div class="block">Get list of table descriptors by namespace.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1287,7 +1284,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableNames</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&nbsp;<a href="../ [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&nbsp;<a href="../ [...]
 <div class="block">List all of the names of userspace tables.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -1303,7 +1300,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableNames</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&nbsp;<a href="../../../../../s [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&nbsp;<a href="../../../../../s [...]
 <div class="block">List all of the names of tables.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1319,7 +1316,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableNames</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&nbsp;<a href="../../../../../s [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&nbsp;<a href="../../../../../s [...]
                                                   boolean&nbsp;includeSysTables)</pre>
 <div class="block">List all of the names of userspace tables.</div>
 <dl>
@@ -1337,7 +1334,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableNamesByNamespace</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&nbsp;<a href="../../../../../s [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&nbsp;<a href="../../../../../s [...]
 <div class="block">Get list of table names by namespace.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1353,7 +1350,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getDescriptor</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.140">getDescriptor</a>(<a href="../../../../../org/apac [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.141">getDescriptor</a>(<a href="../../../../../org/apac [...]
 <div class="block">Method for getting the tableDescriptor</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1369,7 +1366,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>createTable</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.146">createTable</a>(<a href="../../../../../org/apache/hadoop/hba [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.147">createTable</a>(<a href="../../../../../org/apache/hadoop/hba [...]
 <div class="block">Creates a new table.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1383,7 +1380,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>createTable</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.159">createTable</a>(<a href="../../../../../org/apache/hadoop/hba [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.160">createTable</a>(<a href="../../../../../org/apache/hadoop/hba [...]
                                     byte[]&nbsp;startKey,
                                     byte[]&nbsp;endKey,
                                     int&nbsp;numRegions)</pre>
@@ -1407,7 +1404,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>createTable</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.169">createTable</a>(<a href="../../../../../org/apache/hadoop/hba [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.170">createTable</a>(<a href="../../../../../org/apache/hadoop/hba [...]
                                     byte[][]&nbsp;splitKeys)</pre>
 <div class="block">Creates a new table with an initial set of empty regions defined by the specified split keys.
  The total number of regions created will be the number of split keys plus one.
@@ -1425,7 +1422,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>modifyTable</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.175">modifyTable</a>(<a href="../../../../../org/apache/hadoop/hba [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.176">modifyTable</a>(<a href="../../../../../org/apache/hadoop/hba [...]
 <div class="block">Modify an existing table, more IRB friendly version.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1439,7 +1436,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteTable</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.181">deleteTable</a>(<a href="../../../../../org/apache/hadoop/hba [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.182">deleteTable</a>(<a href="../../../../../org/apache/hadoop/hba [...]
 <div class="block">Deletes a table.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1453,7 +1450,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>truncateTable</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.188">truncateTable</a>(<a href="../../../../../org/apache/hadoop/h [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.189">truncateTable</a>(<a href="../../../../../org/apache/hadoop/h [...]
                                       boolean&nbsp;preserveSplits)</pre>
 <div class="block">Truncate a table.</div>
 <dl>
@@ -1469,7 +1466,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>enableTable</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.194">enableTable</a>(<a href="../../../../../org/apache/hadoop/hba [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.195">enableTable</a>(<a href="../../../../../org/apache/hadoop/hba [...]
 <div class="block">Enable a table. The table has to be in disabled state for it to be enabled.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1483,7 +1480,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>disableTable</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.200">disableTable</a>(<a href="../../../../../org/apache/hadoop/hb [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.201">disableTable</a>(<a href="../../../../../org/apache/hadoop/hb [...]
 <div class="block">Disable a table. The table has to be in enabled state for it to be disabled.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1497,7 +1494,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isTableEnabled</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.207">isTableEnabled</a>(<a href="../../../../../org/apache/h [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.208">isTableEnabled</a>(<a href="../../../../../org/apache/h [...]
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>tableName</code> - name of table to check</dd>
@@ -1513,7 +1510,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isTableDisabled</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.214">isTableDisabled</a>(<a href="../../../../../org/apache/ [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.215">isTableDisabled</a>(<a href="../../../../../org/apache/ [...]
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>tableName</code> - name of table to check</dd>
@@ -1529,7 +1526,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isTableAvailable</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.221">isTableAvailable</a>(<a href="../../../../../org/apache [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.222">isTableAvailable</a>(<a href="../../../../../org/apache [...]
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>tableName</code> - name of table to check</dd>
@@ -1539,34 +1536,13 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 </dl>
 </li>
 </ul>
-<a name="isTableAvailable-org.apache.hadoop.hbase.TableName-byte:A:A-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>isTableAvailable</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
-<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.233">isTableAvailable</a>(<a href="../../../../../org/apache/hado [...]
-                                                        byte[][]&nbsp;splitKeys)</pre>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Since 2.2.0. Will be removed in 3.0.0. Use <a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-"><code>isTableAvailable(TableName)</code></a></span></div>
-<div class="block">Use this api to check if the table has been created with the specified number of splitkeys
- which was used while creating the given table. Note : If this api is used after a table's
- region gets splitted, the api may return false. The return value will be wrapped by a
- <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent"><code>CompletableFuture</code></a>.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>tableName</code> - name of table to check</dd>
-<dd><code>splitKeys</code> - keys to check if the table has been created with all split keys</dd>
-</dl>
-</li>
-</ul>
 <a name="addColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>addColumnFamily</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.240">addColumnFamily</a>(<a href="../../../../../org/apache/hadoop [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.229">addColumnFamily</a>(<a href="../../../../../org/apache/hadoop [...]
                                         <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</pre>
 <div class="block">Add a column family to an existing table.</div>
 <dl>
@@ -1582,7 +1558,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteColumnFamily</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.248">deleteColumnFamily</a>(<a href="../../../../../org/apache/had [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.237">deleteColumnFamily</a>(<a href="../../../../../org/apache/had [...]
                                            byte[]&nbsp;columnFamily)</pre>
 <div class="block">Delete a column family from a table.</div>
 <dl>
@@ -1598,7 +1574,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>modifyColumnFamily</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.255">modifyColumnFamily</a>(<a href="../../../../../org/apache/had [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.244">modifyColumnFamily</a>(<a href="../../../../../org/apache/had [...]
                                            <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</pre>
 <div class="block">Modify an existing column family on a table.</div>
 <dl>
@@ -1614,7 +1590,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>createNamespace</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.262">createNamespace</a>(<a href="../../../../../org/apache/hadoop [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.251">createNamespace</a>(<a href="../../../../../org/apache/hadoop [...]
 <div class="block">Create a new namespace.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1628,7 +1604,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>modifyNamespace</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.268">modifyNamespace</a>(<a href="../../../../../org/apache/hadoop [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.257">modifyNamespace</a>(<a href="../../../../../org/apache/hadoop [...]
 <div class="block">Modify an existing namespace.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1642,7 +1618,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteNamespace</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.274">deleteNamespace</a>(<a href="https://docs.oracle.com/javase/8 [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.263">deleteNamespace</a>(<a href="https://docs.oracle.com/javase/8 [...]
 <div class="block">Delete an existing namespace. Only empty namespaces (no tables) can be removed.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1656,7 +1632,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getNamespaceDescriptor</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.281">getNamespaceDescriptor</a>(<a href="https://docs.oracle.com/ [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.270">getNamespaceDescriptor</a>(<a href="https://docs.oracle.com/ [...]
 <div class="block">Get a namespace descriptor by name</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1672,7 +1648,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listNamespaceDescriptors</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;&gt;&nbsp;<a hr [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;&gt;&nbsp;<a hr [...]
 <div class="block">List available namespace descriptors</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -1686,7 +1662,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegions</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;<a hr [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;<a hr [...]
 <div class="block">Get all the online regions on a region server.</div>
 </li>
 </ul>
@@ -1696,7 +1672,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegions</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;<a hr [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;<a hr [...]
 <div class="block">Get the regions of a given table.</div>
 </li>
 </ul>
@@ -1706,7 +1682,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>flush</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.303">flush</a>(<a href="../../../../../org/apache/hadoop/hbase/Tab [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.292">flush</a>(<a href="../../../../../org/apache/hadoop/hbase/Tab [...]
 <div class="block">Flush a table.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1720,7 +1696,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>flushRegion</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.309">flushRegion</a>(byte[]&nbsp;regionName)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.298">flushRegion</a>(byte[]&nbsp;regionName)</pre>
 <div class="block">Flush an individual region.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1734,7 +1710,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>flushRegionServer</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.315">flushRegionServer</a>(<a href="../../../../../org/apache/hado [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.304">flushRegionServer</a>(<a href="../../../../../org/apache/hado [...]
 <div class="block">Flush all region on the region server.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1748,9 +1724,10 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>compact</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.322">compact</a>(<a href="../../../../../org/apache/h [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.312">compact</a>(<a href="../../../../../org/apache/h [...]
 <div class="block">Compact a table. When the returned CompletableFuture is done, it only means the compact request
- was sent to HBase and may need some time to finish the compact operation.</div>
+ was sent to HBase and may need some time to finish the compact operation.
+ Throws <a href="../../../../../org/apache/hadoop/hbase/TableNotFoundException.html" title="class in org.apache.hadoop.hbase"><code>TableNotFoundException</code></a> if table not found.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>tableName</code> - table to compact</dd>
@@ -1763,11 +1740,12 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>compact</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.334">compact</a>(<a href="../../../../../org/apache/h [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.325">compact</a>(<a href="../../../../../org/apache/h [...]
                                         byte[]&nbsp;columnFamily)</pre>
 <div class="block">Compact a column family within a table. When the returned CompletableFuture is done, it only
  means the compact request was sent to HBase and may need some time to finish the compact
- operation.</div>
+ operation.
+ Throws <a href="../../../../../org/apache/hadoop/hbase/TableNotFoundException.html" title="class in org.apache.hadoop.hbase"><code>TableNotFoundException</code></a> if table not found.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>tableName</code> - table to compact</dd>
@@ -1782,10 +1760,12 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>compact</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.344">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/T [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.337">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/T [...]
                                 <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</pre>
 <div class="block">Compact a table. When the returned CompletableFuture is done, it only means the compact request
- was sent to HBase and may need some time to finish the compact operation.</div>
+ was sent to HBase and may need some time to finish the compact operation.
+ Throws <a href="../../../../../org/apache/hadoop/hbase/TableNotFoundException.html" title="class in org.apache.hadoop.hbase"><code>TableNotFoundException</code></a> if table not found for
+ normal compaction type.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>tableName</code> - table to compact</dd>
@@ -1799,12 +1779,14 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>compact</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.354">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/T [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.349">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/T [...]
                                 byte[]&nbsp;columnFamily,
                                 <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</pre>
 <div class="block">Compact a column family within a table. When the returned CompletableFuture is done, it only
  means the compact request was sent to HBase and may need some time to finish the compact
- operation.</div>
+ operation.
+ Throws <a href="../../../../../org/apache/hadoop/hbase/TableNotFoundException.html" title="class in org.apache.hadoop.hbase"><code>TableNotFoundException</code></a> if table not found for
+ normal compaction type.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>tableName</code> - table to compact</dd>
@@ -1819,7 +1801,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>compactRegion</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.362">compactRegion</a>(byte[]&nbsp;regionName)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.357">compactRegion</a>(byte[]&nbsp;regionName)</pre>
 <div class="block">Compact an individual region. When the returned CompletableFuture is done, it only means the
  compact request was sent to HBase and may need some time to finish the compact operation.</div>
 <dl>
@@ -1834,7 +1816,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>compactRegion</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.372">compactRegion</a>(byte[]&nbsp;regionName,
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.367">compactRegion</a>(byte[]&nbsp;regionName,
                                       byte[]&nbsp;columnFamily)</pre>
 <div class="block">Compact a column family within a region. When the returned CompletableFuture is done, it only
  means the compact request was sent to HBase and may need some time to finish the compact
@@ -1853,9 +1835,10 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompact</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.379">majorCompact</a>(<a href="../../../../../org/apa [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.375">majorCompact</a>(<a href="../../../../../org/apa [...]
 <div class="block">Major compact a table. When the returned CompletableFuture is done, it only means the compact
- request was sent to HBase and may need some time to finish the compact operation.</div>
+ request was sent to HBase and may need some time to finish the compact operation.
+ Throws <a href="../../../../../org/apache/hadoop/hbase/TableNotFoundException.html" title="class in org.apache.hadoop.hbase"><code>TableNotFoundException</code></a> if table not found.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>tableName</code> - table to major compact</dd>
@@ -1868,11 +1851,13 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompact</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.391">majorCompact</a>(<a href="../../../../../org/apa [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.389">majorCompact</a>(<a href="../../../../../org/apa [...]
                                              byte[]&nbsp;columnFamily)</pre>
 <div class="block">Major compact a column family within a table. When the returned CompletableFuture is done, it
  only means the compact request was sent to HBase and may need some time to finish the compact
- operation.</div>
+ operation.
+ Throws <a href="../../../../../org/apache/hadoop/hbase/TableNotFoundException.html" title="class in org.apache.hadoop.hbase"><code>TableNotFoundException</code></a> if table not found for
+ normal compaction. type.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>tableName</code> - table to major compact</dd>
@@ -1890,7 +1875,9 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.401">majorCompact</a>(<a href="../../../../../org/apache/hadoop/hb [...]
                                      <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</pre>
 <div class="block">Major compact a table. When the returned CompletableFuture is done, it only means the compact
- request was sent to HBase and may need some time to finish the compact operation.</div>
+ request was sent to HBase and may need some time to finish the compact operation.
+ Throws <a href="../../../../../org/apache/hadoop/hbase/TableNotFoundException.html" title="class in org.apache.hadoop.hbase"><code>TableNotFoundException</code></a> if table not found for
+ normal compaction type.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>tableName</code> - table to major compact</dd>
@@ -1904,12 +1891,13 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompact</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.412">majorCompact</a>(<a href="../../../../../org/apache/hadoop/hb [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.413">majorCompact</a>(<a href="../../../../../org/apache/hadoop/hb [...]
                                      byte[]&nbsp;columnFamily,
                                      <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</pre>
 <div class="block">Major compact a column family within a table. When the returned CompletableFuture is done, it
  only means the compact request was sent to HBase and may need some time to finish the compact
- operation.</div>
+ operation.
+ Throws <a href="../../../../../org/apache/hadoop/hbase/TableNotFoundException.html" title="class in org.apache.hadoop.hbase"><code>TableNotFoundException</code></a> if table not found.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>tableName</code> - table to major compact</dd>
@@ -1925,7 +1913,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompactRegion</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.420">majorCompactRegion</a>(byte[]&nbsp;regionName)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.421">majorCompactRegion</a>(byte[]&nbsp;regionName)</pre>
 <div class="block">Major compact a region. When the returned CompletableFuture is done, it only means the compact
  request was sent to HBase and may need some time to finish the compact operation.</div>
 <dl>
@@ -1940,7 +1928,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompactRegion</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.430">majorCompactRegion</a>(byte[]&nbsp;regionName,
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.431">majorCompactRegion</a>(byte[]&nbsp;regionName,
                                            byte[]&nbsp;columnFamily)</pre>
 <div class="block">Major compact a column family within region. When the returned CompletableFuture is done, it
  only means the compact request was sent to HBase and may need some time to finish the compact
@@ -1959,7 +1947,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>compactRegionServer</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.436">compactRegionServer</a>(<a href="../../../../../org/apache/ha [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.437">compactRegionServer</a>(<a href="../../../../../org/apache/ha [...]
 <div class="block">Compact all regions on the region server.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1973,7 +1961,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>majorCompactRegionServer</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.442">majorCompactRegionServer</a>(<a href="../../../../../org/apac [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.443">majorCompactRegionServer</a>(<a href="../../../../../org/apac [...]
 <div class="block">Compact all regions on the region server.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1987,7 +1975,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>mergeSwitch</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.449">mergeSwitch</a>(boolean&nbsp;enabled)</pre>
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.450">mergeSwitch</a>(boolean&nbsp;enabled)</pre>
 <div class="block">Turn the Merge switch on or off.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2003,7 +1991,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>mergeSwitch</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.464">mergeSwitch</a>(boolean&nbsp;enabled,
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.465">mergeSwitch</a>(boolean&nbsp;enabled,
                                        boolean&nbsp;drainMerges)</pre>
 <div class="block">Turn the Merge switch on or off.
  <p/>
@@ -2026,7 +2014,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isMergeEnabled</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.471">isMergeEnabled</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.472">isMergeEnabled</a>()</pre>
 <div class="block">Query the current state of the Merge switch.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -2041,7 +2029,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>splitSwitch</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.478">splitSwitch</a>(boolean&nbsp;enabled)</pre>
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.479">splitSwitch</a>(boolean&nbsp;enabled)</pre>
 <div class="block">Turn the Split switch on or off.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2057,7 +2045,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>splitSwitch</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.493">splitSwitch</a>(boolean&nbsp;enabled,
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.494">splitSwitch</a>(boolean&nbsp;enabled,
                                        boolean&nbsp;drainSplits)</pre>
 <div class="block">Turn the Split switch on or off.
  <p/>
@@ -2080,7 +2068,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isSplitEnabled</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.500">isSplitEnabled</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.501">isSplitEnabled</a>()</pre>
 <div class="block">Query the current state of the Split switch.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -2095,7 +2083,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>mergeRegions</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.509">mergeRegions</a>(byte[]&nbsp;nameOfRegionA,
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.510">mergeRegions</a>(byte[]&nbsp;nameOfRegionA,
                                              byte[]&nbsp;nameOfRegionB,
                                              boolean&nbsp;forcible)</pre>
 <div class="block">Merge two regions.</div>
@@ -2114,7 +2102,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>mergeRegions</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.524">mergeRegions</a>(<a href="https://docs.oracle.com/javase/8/do [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.525">mergeRegions</a>(<a href="https://docs.oracle.com/javase/8/do [...]
                                      boolean&nbsp;forcible)</pre>
 <div class="block">Merge regions.
  <p/>
@@ -2135,7 +2123,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>split</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.530">split</a>(<a href="../../../../../org/apache/hadoop/hbase/Tab [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.531">split</a>(<a href="../../../../../org/apache/hadoop/hbase/Tab [...]
 <div class="block">Split a table. The method will execute split action for each region in table.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2149,7 +2137,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>splitRegion</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.536">splitRegion</a>(byte[]&nbsp;regionName)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.537">splitRegion</a>(byte[]&nbsp;regionName)</pre>
 <div class="block">Split an individual region.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2163,7 +2151,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>split</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.543">split</a>(<a href="../../../../../org/apache/hadoop/hbase/Tab [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.544">split</a>(<a href="../../../../../org/apache/hadoop/hbase/Tab [...]
                               byte[]&nbsp;splitPoint)</pre>
 <div class="block">Split a table.</div>
 <dl>
@@ -2179,7 +2167,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>splitRegion</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.551">splitRegion</a>(byte[]&nbsp;regionName,
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.552">splitRegion</a>(byte[]&nbsp;regionName,
                                     byte[]&nbsp;splitPoint)</pre>
 <div class="block">Split an individual region.</div>
 <dl>
@@ -2196,7 +2184,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>assign</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.556">assign</a>(byte[]&nbsp;regionName)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.557">assign</a>(byte[]&nbsp;regionName)</pre>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>regionName</code> - Encoded or full name of region to assign.</dd>
@@ -2209,7 +2197,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>unassign</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.568">unassign</a>(byte[]&nbsp;regionName,
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.569">unassign</a>(byte[]&nbsp;regionName,
                                  boolean&nbsp;forcible)</pre>
 <div class="block">Unassign a region from current hosting regionserver. Region will then be assigned to a
  regionserver chosen at random. Region could be reassigned back to the same server. Use
@@ -2230,7 +2218,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>offline</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.578">offline</a>(byte[]&nbsp;regionName)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.579">offline</a>(byte[]&nbsp;regionName)</pre>
 <div class="block">Offline specified region from master's in-memory state. It will not attempt to reassign the
  region as in unassign. This API can be used when a region not served by any region server and
  still online as per Master's in memory state. If this API is incorrectly used on active region
@@ -2248,7 +2236,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>move</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.584">move</a>(byte[]&nbsp;regionName)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.585">move</a>(byte[]&nbsp;regionName)</pre>
 <div class="block">Move the region <code>r</code> to a random server.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2262,7 +2250,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>move</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.593">move</a>(byte[]&nbsp;regionName,
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.594">move</a>(byte[]&nbsp;regionName,
                              <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</pre>
 <div class="block">Move the region <code>r</code> to <code>dest</code>.</div>
 <dl>
@@ -2280,7 +2268,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>setQuota</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.599">setQuota</a>(<a href="../../../../../org/apache/hadoop/hbase/ [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.600">setQuota</a>(<a href="../../../../../org/apache/hadoop/hbase/ [...]
 <div class="block">Apply the new quota settings.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2294,7 +2282,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getQuota</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;&gt;&nbsp;<a  [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;&gt;&nbsp;<a  [...]
 <div class="block">List the quotas based on the filter.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2310,7 +2298,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>addReplicationPeer</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.613">addReplicationPeer</a>(<a href="https://docs.ora [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.614">addReplicationPeer</a>(<a href="https://docs.ora [...]
                                                    <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</pre>
 <div class="block">Add a new replication peer for replicating data to slave cluster</div>
 <dl>
@@ -2326,7 +2314,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>addReplicationPeer</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.624">addReplicationPeer</a>(<a href="https://docs.oracle.com/javas [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.625">addReplicationPeer</a>(<a href="https://docs.oracle.com/javas [...]
                                            <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
                                            boolean&nbsp;enabled)</pre>
 <div class="block">Add a new replication peer for replicating data to slave cluster</div>
@@ -2344,7 +2332,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>removeReplicationPeer</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.631">removeReplicationPeer</a>(<a href="https://docs.oracle.com/ja [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.632">removeReplicationPeer</a>(<a href="https://docs.oracle.com/ja [...]
 <div class="block">Remove a peer and stop the replication</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2358,7 +2346,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>enableReplicationPeer</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.637">enableReplicationPeer</a>(<a href="https://docs.oracle.com/ja [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.638">enableReplicationPeer</a>(<a href="https://docs.oracle.com/ja [...]
 <div class="block">Restart the replication stream to the specified peer</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2372,7 +2360,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>disableReplicationPeer</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.643">disableReplicationPeer</a>(<a href="https://docs.oracle.com/j [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.644">disableReplicationPeer</a>(<a href="https://docs.oracle.com/j [...]
 <div class="block">Stop the replication stream to the specified peer</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2386,7 +2374,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getReplicationPeerConfig</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.650">getReplicationPeerConfig</a>(<a  [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.651">getReplicationPeerConfig</a>(<a  [...]
 <div class="block">Returns the configured ReplicationPeerConfig for the specified peer</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2402,7 +2390,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>updateReplicationPeerConfig</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.657">updateReplicationPeerConfig</a>(<a href="https://docs.oracle. [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.658">updateReplicationPeerConfig</a>(<a href="https://docs.oracle. [...]
                                                     <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</pre>
 <div class="block">Update the peerConfig for the specified peer</div>
 <dl>
@@ -2418,7 +2406,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>transitReplicationPeerSyncReplicationState</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.665">transitReplicationPeerSyncReplicationState</a>(<a href="https [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.666">transitReplicationPeerSyncReplicationState</a>(<a href="https [...]
                                                                    <a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;state)</pre>
 <div class="block">Transit current cluster to a new state in a synchronous replication peer.</div>
 <dl>
@@ -2434,7 +2422,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getReplicationPeerSyncReplicationState</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.673">getReplicationPeerSync [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.674">getReplicationPeerSync [...]
 <div class="block">Get the current cluster state in a synchronous replication peer.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2450,7 +2438,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>appendReplicationPeerTableCFs</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.694">appendReplicationPeerTableCFs</a>(<a href="https://docs.oracl [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.695">appendReplicationPeerTableCFs</a>(<a href="https://docs.oracl [...]
                                                       <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase [...]
 <div class="block">Append the replicable table-cf config of the specified peer</div>
 <dl>
@@ -2466,7 +2454,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>removeReplicationPeerTableCFs</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.702">removeReplicationPeerTableCFs</a>(<a href="https://docs.oracl [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.703">removeReplicationPeerTableCFs</a>(<a href="https://docs.oracl [...]
                                                       <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase [...]
 <div class="block">Remove some table-cfs from config of the specified peer</div>
 <dl>
@@ -2482,7 +2470,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listReplicationPeers</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">Replication [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">Replication [...]
 <div class="block">Return a list of replication peers.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -2497,7 +2485,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listReplicationPeers</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">Replication [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">Replication [...]
 <div class="block">Return a list of replication peers.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2514,7 +2502,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listReplicatedTableCFs</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/replication/TableCFs.html" title="class in org.apache.hadoop.hbase.client.replication">TableCFs</a>&gt [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/replication/TableCFs.html" title="class in org.apache.hadoop.hbase.client.replication">TableCFs</a>&gt [...]
 <div class="block">Find all table and column families that are replicated from this cluster</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -2529,7 +2517,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>enableTableReplication</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.731">enableTableReplication</a>(<a href="../../../../../org/apache [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.732">enableTableReplication</a>(<a href="../../../../../org/apache [...]
 <div class="block">Enable a table's replication switch.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2543,7 +2531,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>disableTableReplication</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.737">disableTableReplication</a>(<a href="../../../../../org/apach [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.738">disableTableReplication</a>(<a href="../../../../../org/apach [...]
 <div class="block">Disable a table's replication switch.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2557,7 +2545,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>snapshot</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.750">snapshot</a>(<a href="https://docs.oracle.com/ja [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.751">snapshot</a>(<a href="https://docs.oracle.com/ja [...]
                                          <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</pre>
 <div class="block">Take a snapshot for the given table. If the table is enabled, a FLUSH-type snapshot will be
  taken. If the table is disabled, an offline snapshot is taken. Snapshots are considered unique
@@ -2579,7 +2567,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>snapshot</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.766">snapshot</a>(<a href="https://docs.oracle.com/ja [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.767">snapshot</a>(<a href="https://docs.oracle.com/ja [...]
                                          <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                          <a href="../../../../../org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client">SnapshotType</a>&nbsp;type)</pre>
 <div class="block">Create typed snapshot of the table. Snapshots are considered unique based on <b>the name of the
@@ -2603,7 +2591,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>snapshot</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.784">snapshot</a>(<a href="../../../../../org/apache/hadoop/hbase/ [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.785">snapshot</a>(<a href="../../../../../org/apache/hadoop/hbase/ [...]
 <div class="block">Take a snapshot and wait for the server to complete that snapshot asynchronously. Only a single
  snapshot should be taken at a time for an instance of HBase, or results may be undefined (you
  can tell multiple HBase clusters to snapshot at the same time, but only one at a time for a
@@ -2626,7 +2614,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isSnapshotFinished</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.800">isSnapshotFinished</a>(<a href="../../../../../org/apac [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.801">isSnapshotFinished</a>(<a href="../../../../../org/apac [...]
 <div class="block">Check the current state of the passed snapshot. There are three possible states:
  <ol>
  <li>running - returns <tt>false</tt></li>
@@ -2651,7 +2639,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>restoreSnapshot</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.810">restoreSnapshot</a>(<a href="https://docs.oracle.com/javase/8 [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.811">restoreSnapshot</a>(<a href="https://docs.oracle.com/javase/8 [...]
 <div class="block">Restore the specified snapshot on the original table. (The table must be disabled) If the
  "hbase.snapshot.restore.take.failsafe.snapshot" configuration property is set to true, a
  snapshot of the current table is taken before executing the restore operation. In case of
@@ -2669,7 +2657,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>restoreSnapshot</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.822">restoreSnapshot</a>(<a href="https://docs.oracle [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.823">restoreSnapshot</a>(<a href="https://docs.oracle [...]
                                                 boolean&nbsp;takeFailSafeSnapshot)</pre>
 <div class="block">Restore the specified snapshot on the original table. (The table must be disabled) If
  'takeFailSafeSnapshot' is set to true, a snapshot of the current table is taken before
@@ -2690,7 +2678,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>restoreSnapshot</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.838">restoreSnapshot</a>(<a href="https://docs.oracle.com/javase/8 [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.839">restoreSnapshot</a>(<a href="https://docs.oracle.com/javase/8 [...]
                                         boolean&nbsp;takeFailSafeSnapshot,
                                         boolean&nbsp;restoreAcl)</pre>
 <div class="block">Restore the specified snapshot on the original table. (The table must be disabled) If
@@ -2713,7 +2701,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>cloneSnapshot</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.846">cloneSnapshot</a>(<a href="https://docs.oracle.c [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.847">cloneSnapshot</a>(<a href="https://docs.oracle.c [...]
                                               <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</pre>
 <div class="block">Create a new table by cloning the snapshot content.</div>
 <dl>
@@ -2729,7 +2717,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>cloneSnapshot</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.856">cloneSnapshot</a>(<a href="https://docs.oracle.com/javase/8/d [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.857">cloneSnapshot</a>(<a href="https://docs.oracle.com/javase/8/d [...]
                                       <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                       boolean&nbsp;restoreAcl)</pre>
 <div class="block">Create a new table by cloning the snapshot content.</div>
@@ -2747,7 +2735,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;& [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;& [...]
 <div class="block">List completed snapshots.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -2762,7 +2750,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;& [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;& [...]
 <div class="block">List all the completed snapshots matching the given pattern.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2778,7 +2766,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;& [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;& [...]
 <div class="block">List all the completed snapshots matching the given table name pattern.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2795,7 +2783,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listTableSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;& [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;& [...]
                                                                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;snapshotNamePattern)</pre>
 <div class="block">List all the completed snapshots matching the given table name regular expression and snapshot
  name regular expression.</div>
@@ -2815,7 +2803,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteSnapshot</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.896">deleteSnapshot</a>(<a href="https://docs.oracle.com/javase/8/ [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.897">deleteSnapshot</a>(<a href="https://docs.oracle.com/javase/8/ [...]
 <div class="block">Delete an existing snapshot.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2829,7 +2817,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.901">deleteSnapshots</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.902">deleteSnapshots</a>()</pre>
 <div class="block">Delete all existing snapshots.</div>
 </li>
 </ul>
@@ -2839,7 +2827,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.907">deleteSnapshots</a>(<a href="https://docs.oracle.com/javase/8 [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.908">deleteSnapshots</a>(<a href="https://docs.oracle.com/javase/8 [...]
 <div class="block">Delete existing snapshots whose names match the pattern passed.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2853,7 +2841,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteTableSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.913">deleteTableSnapshots</a>(<a href="https://docs.oracle.com/jav [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.914">deleteTableSnapshots</a>(<a href="https://docs.oracle.com/jav [...]
 <div class="block">Delete all existing snapshots matching the given table name pattern.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -2867,7 +2855,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteTableSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.921">deleteTableSnapshots</a>(<a href="https://docs.oracle.com/jav [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.922">deleteTableSnapshots</a>(<a href="https://docs.oracle.com/jav [...]
                                              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;snapshotNamePattern)</pre>
 <div class="block">Delete all existing snapshots matching the given table name regular expression and snapshot
  name regular expression.</div>
@@ -2884,7 +2872,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>execProcedure</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.932">execProcedure</a>(<a href="https://docs.oracle.com/javase/8/d [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.933">execProcedure</a>(<a href="https://docs.oracle.com/javase/8/d [...]
                                       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;instance,
                                       <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;props)</pre>
 <div class="block">Execute a distributed procedure on a cluster.</div>
@@ -2904,7 +2892,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>execProcedureWithReturn</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;byte[]&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.944">execProcedureWithReturn</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;signature,
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;byte[]&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.945">execProcedureWithReturn</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;signature,
                                                   <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;instance,
                                                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;props)</pre>
 <div class="block">Execute a distributed procedure on a cluster.</div>
@@ -2926,7 +2914,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isProcedureFinished</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.960">isProcedureFinished</a>(<a href="https://docs.oracle.co [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.961">isProcedureFinished</a>(<a href="https://docs.oracle.co [...]
                                                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;instance,
                                                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;props)</pre>
 <div class="block">Check the current state of the specified procedure. There are three possible states:
@@ -2953,7 +2941,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <li class="blockList">
 <h4>abortProcedure</h4>
 <pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
-<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.973">abortProcedure</a>(long&nbsp;procId,
+<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.974">abortProcedure</a>(long&nbsp;procId,
                                                       boolean&nbsp;mayInterruptIfRunning)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Since 2.1.1 -- to be removed.</span></div>
 <div class="block">Abort a procedure
@@ -2974,7 +2962,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getProcedures</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.979">getProcedures</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.980">getProcedures</a>()</pre>
 <div class="block">List procedures</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -2988,7 +2976,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getLocks</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.985">getLocks</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.986">getLocks</a>()</pre>
 <div class="block">List locks.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3002,7 +2990,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>decommissionRegionServers</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.995">decommissionRegionServers</a>(<a href="https://docs.oracle.co [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.996">decommissionRegionServers</a>(<a href="https://docs.oracle.co [...]
                                                   boolean&nbsp;offload)</pre>
 <div class="block">Mark region server(s) as decommissioned to prevent additional regions from getting
  assigned to them. Optionally unload the regions on the servers. If there are multiple servers
@@ -3021,7 +3009,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listDecommissionedRegionServers</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;&nbsp;<a href="../../../../.. [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;&nbsp;<a href="../../../../.. [...]
 <div class="block">List region servers marked as decommissioned, which can not be assigned regions.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3035,7 +3023,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>recommissionRegionServer</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1009">recommissionRegionServer</a>(<a href="../../../../../org/apa [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1010">recommissionRegionServer</a>(<a href="../../../../../org/apa [...]
                                                  <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;encodedRegionNames)</pre>
 <div class="block">Remove decommission marker from a region server to allow regions assignments. Load regions onto
  the server if a list of regions is given. Region loading is asynchronous.</div>
@@ -3052,7 +3040,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getClusterMetrics</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1015">getClusterMetrics</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1016">getClusterMetrics</a>()</pre>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>cluster status wrapped by <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent"><code>CompletableFuture</code></a></dd>
@@ -3065,7 +3053,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getClusterMetrics</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1020">getClusterMetrics</a>(<a href="https://docs.oracle.com/javase/8/d [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1021">getClusterMetrics</a>(<a href="https://docs.oracle.com/javase/8/d [...]
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>cluster status wrapped by <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent"><code>CompletableFuture</code></a></dd>
@@ -3078,7 +3066,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getMaster</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1025">getMaster</a>()</pre>
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1026">getMaster</a>()</pre>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>current master server name wrapped by <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent"><code>CompletableFuture</code></a></dd>
@@ -3091,7 +3079,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getBackupMasters</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;&nbs [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;&nbs [...]
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>current backup master list wrapped by <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent"><code>CompletableFuture</code></a></dd>
@@ -3104,7 +3092,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegionServers</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;&nbs [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;&nbs [...]
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>current live region servers list wrapped by <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent"><code>CompletableFuture</code></a></dd>
@@ -3117,7 +3105,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getMasterCoprocessorNames</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt [...]
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>a list of master coprocessors wrapped by <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent"><code>CompletableFuture</code></a></dd>
@@ -3130,7 +3118,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getMasterInfoPort</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1057">getMasterInfoPort</a>()</pre>
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1058">getMasterInfoPort</a>()</pre>
 <div class="block">Get the info port of the current master if one is available.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3144,7 +3132,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>shutdown</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1065">shutdown</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1066">shutdown</a>()</pre>
 <div class="block">Shuts down the HBase cluster.</div>
 </li>
 </ul>
@@ -3154,7 +3142,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>stopMaster</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1070">stopMaster</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1071">stopMaster</a>()</pre>
 <div class="block">Shuts down the current HBase master only.</div>
 </li>
 </ul>
@@ -3164,7 +3152,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>stopRegionServer</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1076">stopRegionServer</a>(<a href="../../../../../org/apache/hado [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1077">stopRegionServer</a>(<a href="../../../../../org/apache/hado [...]
 <div class="block">Stop the designated regionserver.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -3178,7 +3166,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>updateConfiguration</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1082">updateConfiguration</a>(<a href="../../../../../org/apache/h [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1083">updateConfiguration</a>(<a href="../../../../../org/apache/h [...]
 <div class="block">Update the configuration and trigger an online config change on the regionserver.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -3192,7 +3180,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>updateConfiguration</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1088">updateConfiguration</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1089">updateConfiguration</a>()</pre>
 <div class="block">Update the configuration and trigger an online config change on all the masters and
  regionservers.</div>
 </li>
@@ -3203,7 +3191,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>rollWALWriter</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1099">rollWALWriter</a>(<a href="../../../../../org/apache/hadoop/ [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1100">rollWALWriter</a>(<a href="../../../../../org/apache/hadoop/ [...]
 <div class="block">Roll the log writer. I.e. for filesystem based write ahead logs, start writing to a new file.
  <p>
  When the returned CompletableFuture is done, it only means the rollWALWriter request was sent
@@ -3222,7 +3210,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>clearCompactionQueues</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1106">clearCompactionQueues</a>(<a href="../../../../../org/apache [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1107">clearCompactionQueues</a>(<a href="../../../../../org/apache [...]
                                               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;queues)</pre>
 <div class="block">Clear compacting queues on a region server.</div>
 <dl>
@@ -3238,7 +3226,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegionMetrics</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;&nbsp;<a href="../. [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;&nbsp;<a href="../. [...]
 <div class="block">Get a list of <a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase"><code>RegionMetrics</code></a> of all regions hosted on a region seerver.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -3254,7 +3242,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegionMetrics</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;&nbsp;<a href="../. [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;&nbsp;<a href="../. [...]
                                                         <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</pre>
 <div class="block">Get a list of <a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase"><code>RegionMetrics</code></a> of all regions hosted on a region seerver for a table.</div>
 <dl>
@@ -3272,7 +3260,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isMasterInMaintenanceMode</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1129">isMasterInMaintenanceMode</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1130">isMasterInMaintenanceMode</a>()</pre>
 <div class="block">Check whether master is in maintenance mode</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3287,7 +3275,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getCompactionState</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1137">getCompactionState</a>(<a href="../../../ [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1138">getCompactionState</a>(<a href="../../../ [...]
 <div class="block">Get the current compaction state of a table. It could be in a major compaction, a minor
  compaction, both, or none.</div>
 <dl>
@@ -3304,7 +3292,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getCompactionState</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1148">getCompactionState</a>(<a href="../../../../../org/apa [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1149">getCompactionState</a>(<a href="../../../../../org/apa [...]
                                                       <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</pre>
 <div class="block">Get the current compaction state of a table. It could be in a major compaction, a minor
  compaction, both, or none.</div>
@@ -3323,7 +3311,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getCompactionStateForRegion</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1157">getCompactionStateForRegion</a>(byte[]&nbsp;regionName)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1158">getCompactionStateForRegion</a>(byte[]&nbsp;regionName)</pre>
 <div class="block">Get the current compaction state of region. It could be in a major compaction, a minor
  compaction, both, or none.</div>
 <dl>
@@ -3340,7 +3328,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getLastMajorCompactionTimestamp</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;&nbs [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;&nbs [...]
 <div class="block">Get the timestamp of the last major compaction for the passed table.
  <p>
  The timestamp of the oldest HFile resulting from a major compaction of that table, or not
@@ -3359,7 +3347,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getLastMajorCompactionTimestampForRegion</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;&nbs [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;&nbs [...]
 <div class="block">Get the timestamp of the last major compaction for the passed region.
  <p>
  The timestamp of the oldest HFile resulting from a major compaction of that region, or not
@@ -3378,7 +3366,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getSecurityCapabilities</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/security/SecurityCapability.html" title="enum in org.apache.hadoop.hbase.client.security">SecurityCapa [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/security/SecurityCapability.html" title="enum in org.apache.hadoop.hbase.client.security">SecurityCapa [...]
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>the list of supported security capabilities. The return value will be wrapped by a
@@ -3392,7 +3380,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>balancerSwitch</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1190">balancerSwitch</a>(boolean&nbsp;on)</pre>
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1191">balancerSwitch</a>(boolean&nbsp;on)</pre>
 <div class="block">Turn the load balancer on or off.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -3408,7 +3396,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>balancerSwitch</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1205">balancerSwitch</a>(boolean&nbsp;on,
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1206">balancerSwitch</a>(boolean&nbsp;on,
                                           boolean&nbsp;drainRITs)</pre>
 <div class="block">Turn the load balancer on or off.
  <p/>
@@ -3431,7 +3419,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>balance</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1213">balance</a>()</pre>
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1214">balance</a>()</pre>
 <div class="block">Invoke the balancer. Will run the balancer and if regions to move, it will go ahead and do the
  reassignments. Can NOT run for various reasons. Check logs.</div>
 <dl>
@@ -3447,7 +3435,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>balance</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1225">balance</a>(boolean&nbsp;forcible)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1226">balance</a>(boolean&nbsp;forcible)</pre>
 <div class="block">Invoke the balancer. Will run the balancer and if regions to move, it will go ahead and do the
  reassignments. If there is region in transition, force parameter of true would still run
  balancer. Can *not* run for other reasons. Check logs.</div>
@@ -3466,7 +3454,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isBalancerEnabled</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1232">isBalancerEnabled</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1233">isBalancerEnabled</a>()</pre>
 <div class="block">Query the current state of the balancer.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3481,7 +3469,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>normalizerSwitch</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1239">normalizerSwitch</a>(boolean&nbsp;on)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1240">normalizerSwitch</a>(boolean&nbsp;on)</pre>
 <div class="block">Set region normalizer on/off.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -3497,7 +3485,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isNormalizerEnabled</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1246">isNormalizerEnabled</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1247">isNormalizerEnabled</a>()</pre>
 <div class="block">Query the current state of the region normalizer</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3512,7 +3500,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>normalize</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1253">normalize</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1254">normalize</a>()</pre>
 <div class="block">Invoke region normalizer. Can NOT run for various reasons. Check logs.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3527,7 +3515,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>cleanerChoreSwitch</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1260">cleanerChoreSwitch</a>(boolean&nbsp;on)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1261">cleanerChoreSwitch</a>(boolean&nbsp;on)</pre>
 <div class="block">Turn the cleaner chore on/off.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -3543,7 +3531,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isCleanerChoreEnabled</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1267">isCleanerChoreEnabled</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1268">isCleanerChoreEnabled</a>()</pre>
 <div class="block">Query the current state of the cleaner chore.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3558,7 +3546,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>runCleanerChore</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1274">runCleanerChore</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1275">runCleanerChore</a>()</pre>
 <div class="block">Ask for cleaner chore to run.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3573,7 +3561,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>catalogJanitorSwitch</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1281">catalogJanitorSwitch</a>(boolean&nbsp;on)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1282">catalogJanitorSwitch</a>(boolean&nbsp;on)</pre>
 <div class="block">Turn the catalog janitor on/off.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -3589,7 +3577,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isCatalogJanitorEnabled</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1288">isCatalogJanitorEnabled</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1289">isCatalogJanitorEnabled</a>()</pre>
 <div class="block">Query on the catalog janitor state.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3604,7 +3592,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>runCatalogJanitor</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1295">runCatalogJanitor</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1296">runCatalogJanitor</a>()</pre>
 <div class="block">Ask for a scan of the catalog table.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3619,7 +3607,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>coprocessorService</h4>
-<pre>&lt;S,R&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;R&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1316">coprocessorService</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Funct [...]
+<pre>&lt;S,R&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;R&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1317">coprocessorService</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Funct [...]
                                               <a href="../../../../../org/apache/hadoop/hbase/client/ServiceCaller.html" title="interface in org.apache.hadoop.hbase.client">ServiceCaller</a>&lt;S,R&gt;&nbsp;callable)</pre>
 <div class="block">Execute the given coprocessor call on the master.
  <p>
@@ -3652,7 +3640,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>coprocessorService</h4>
-<pre>&lt;S,R&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;R&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1339">coprocessorService</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Funct [...]
+<pre>&lt;S,R&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;R&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1340">coprocessorService</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Funct [...]
                                               <a href="../../../../../org/apache/hadoop/hbase/client/ServiceCaller.html" title="interface in org.apache.hadoop.hbase.client">ServiceCaller</a>&lt;S,R&gt;&nbsp;callable,
                                               <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</pre>
 <div class="block">Execute the given coprocessor call on the given region server.
@@ -3687,7 +3675,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>listDeadServers</h4>
-<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;&nbsp;<a href=". [...]
+<pre>default&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;&nbsp;<a href=". [...]
 <div class="block">List all the dead region servers.</div>
 </li>
 </ul>
@@ -3697,7 +3685,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>clearDeadServers</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;&nbsp;<a href="../../../../.. [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;&nbsp;<a href="../../../../.. [...]
 <div class="block">Clear dead region servers from master.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -3713,7 +3701,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>clearBlockCache</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/CacheEvictionStats.html" title="class in org.apache.hadoop.hbase">CacheEvictionStats</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1365">clearBlockCache</a>(<a href="../../../../../org/apache/hadoop [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/CacheEvictionStats.html" title="class in org.apache.hadoop.hbase">CacheEvictionStats</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1366">clearBlockCache</a>(<a href="../../../../../org/apache/hadoop [...]
 <div class="block">Clear all the blocks corresponding to this table from BlockCache. For expert-admins. Calling
  this API will drop all the cached blocks specific to a table from BlockCache. This can
  significantly impact the query performance as the subsequent queries will have to retrieve the
@@ -3732,7 +3720,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>cloneTableSchema</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1374">cloneTableSchema</a>(<a href="../../../../../org/apache/hado [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1375">cloneTableSchema</a>(<a href="../../../../../org/apache/hado [...]
                                          <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;newTableName,
                                          boolean&nbsp;preserveSplits)</pre>
 <div class="block">Create a new table by cloning the existent table schema.</div>
@@ -3750,7 +3738,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>compactionSwitch</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javas [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javas [...]
                                                             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;serverNamesList)</pre>
 <div class="block">Turn the compaction on or off. Disabling compactions will also interrupt any currently ongoing
  compactions. This state is ephemeral. The setting will be lost on restart. Compaction
@@ -3771,7 +3759,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>switchRpcThrottle</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1395">switchRpcThrottle</a>(boolean&nbsp;enable)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1396">switchRpcThrottle</a>(boolean&nbsp;enable)</pre>
 <div class="block">Switch the rpc throttle enabled state.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -3787,7 +3775,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>isRpcThrottleEnabled</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1401">isRpcThrottleEnabled</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1402">isRpcThrottleEnabled</a>()</pre>
 <div class="block">Get if the rpc throttle is enabled.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3801,7 +3789,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>exceedThrottleQuotaSwitch</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1409">exceedThrottleQuotaSwitch</a>(boolean&nbsp;enable)</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1410">exceedThrottleQuotaSwitch</a>(boolean&nbsp;enable)</pre>
 <div class="block">Switch the exceed throttle quota. If enabled, user/table/namespace throttle quota
  can be exceeded if region server has availble quota.</div>
 <dl>
@@ -3818,7 +3806,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getSpaceQuotaTableSizes</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/ [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/ [...]
 <div class="block">Fetches the table sizes on the filesystem as tracked by the HBase Master.</div>
 </li>
 </ul>
@@ -3828,7 +3816,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegionServerSpaceQuotaSnapshots</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;? extends <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,? extends <a href="../../../.. [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;? extends <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,? extends <a href="../../../.. [...]
 <div class="block">Fetches the observed <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas"><code>SpaceQuotaSnapshotView</code></a>s observed by a RegionServer.</div>
 </li>
 </ul>
@@ -3838,7 +3826,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getCurrentSpaceQuotaSnapshot</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;? extends <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1427">getCurrentSpaceQuotaSnaps [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;? extends <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1428">getCurrentSpaceQuotaSnaps [...]
 <div class="block">Returns the Master's view of a quota on the given <code>namespace</code> or null if the Master has
  no quota information on that namespace.</div>
 </li>
@@ -3849,7 +3837,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>getCurrentSpaceQuotaSnapshot</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;? extends <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1433">getCurrentSpaceQuotaSnaps [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;? extends <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1434">getCurrentSpaceQuotaSnaps [...]
 <div class="block">Returns the Master's view of a quota on the given <code>tableName</code> or null if the Master has
  no quota information on that table.</div>
 </li>
@@ -3860,7 +3848,7 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <ul class="blockList">
 <li class="blockList">
 <h4>grant</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1443">grant</a>(org.apache.hadoop.hbase.security.access.UserPermis [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1444">grant</a>(org.apache.hadoop.hbase.security.access.UserPermis [...]
                               boolean&nbsp;mergeExistingPermissions)</pre>
 <div class="block">Grants user specific permissions</div>
 <dl>
@@ -3875,10 +3863,10 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 <a name="revoke-org.apache.hadoop.hbase.security.access.UserPermission-">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>revoke</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1449">revoke</a>(org.apache.hadoop.hbase.security.access.UserPermi [...]
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1450">revoke</a>(org.apache.hadoop.hbase.security.access.UserPermi [...]
 <div class="block">Revokes user specific permissions</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -3886,6 +3874,23 @@ public interface <a href="../../../../../src-html/org/apache/hadoop/hbase/client
 </dl>
 </li>
 </ul>
+<a name="getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getUserPermissions</h4>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.security.access.UserPermission&gt;&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html#line.1459 [...]
+<div class="block">Get the global/namespace/table permissions for user</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>getUserPermissionsRequest</code> - A request contains which user, global, namespace or table
+          permissions needed</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The user and permission list</dd>
+</dl>
+</li>
+</ul>
 </li>
 </ul>
 </li>
diff --git a/apidocs/src-html/org/apache/hadoop/hbase/client/Admin.html b/apidocs/src-html/org/apache/hadoop/hbase/client/Admin.html
index 71470c7..6d6a1c0 100644
--- a/apidocs/src-html/org/apache/hadoop/hbase/client/Admin.html
+++ b/apidocs/src-html/org/apache/hadoop/hbase/client/Admin.html
@@ -61,1998 +61,2009 @@
 <span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.replication.ReplicationPeerConfig;<a name="line.53"></a>
 <span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.replication.ReplicationPeerDescription;<a name="line.54"></a>
 <span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.replication.SyncReplicationState;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.security.access.UserPermission;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.snapshot.HBaseSnapshotException;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.snapshot.RestoreSnapshotException;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.snapshot.SnapshotCreationException;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.snapshot.UnknownSnapshotException;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>/**<a name="line.63"></a>
-<span class="sourceLineNo">064</span> * The administrative API for HBase. Obtain an instance from {@link Connection#getAdmin()} and<a name="line.64"></a>
-<span class="sourceLineNo">065</span> * call {@link #close()} when done.<a name="line.65"></a>
-<span class="sourceLineNo">066</span> * &lt;p&gt;Admin can be used to create, drop, list, enable and disable and otherwise modify tables,<a name="line.66"></a>
-<span class="sourceLineNo">067</span> * as well as perform other administrative operations.<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * @see ConnectionFactory<a name="line.69"></a>
-<span class="sourceLineNo">070</span> * @see Connection<a name="line.70"></a>
-<span class="sourceLineNo">071</span> * @see Table<a name="line.71"></a>
-<span class="sourceLineNo">072</span> * @since 0.99.0<a name="line.72"></a>
-<span class="sourceLineNo">073</span> */<a name="line.73"></a>
-<span class="sourceLineNo">074</span>@InterfaceAudience.Public<a name="line.74"></a>
-<span class="sourceLineNo">075</span>public interface Admin extends Abortable, Closeable {<a name="line.75"></a>
-<span class="sourceLineNo">076</span><a name="line.76"></a>
-<span class="sourceLineNo">077</span>  /**<a name="line.77"></a>
-<span class="sourceLineNo">078</span>   * Return the operation timeout for a rpc call.<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   * @see #getSyncWaitTimeout()<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   */<a name="line.80"></a>
-<span class="sourceLineNo">081</span>  int getOperationTimeout();<a name="line.81"></a>
-<span class="sourceLineNo">082</span><a name="line.82"></a>
-<span class="sourceLineNo">083</span>  /**<a name="line.83"></a>
-<span class="sourceLineNo">084</span>   * Return the blocking wait time for an asynchronous operation. Can be configured by<a name="line.84"></a>
-<span class="sourceLineNo">085</span>   * {@code hbase.client.sync.wait.timeout.msec}.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>   * &lt;p/&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span>   * For several operations, such as createTable, deleteTable, etc, the rpc call will finish right<a name="line.87"></a>
-<span class="sourceLineNo">088</span>   * after we schedule a procedure at master side, so the timeout will not be controlled by the<a name="line.88"></a>
-<span class="sourceLineNo">089</span>   * above {@link #getOperationTimeout()}. And timeout value here tells you how much time we will<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   * wait until the procedure at master side is finished.<a name="line.90"></a>
-<span class="sourceLineNo">091</span>   * &lt;p/&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span>   * In general, you can consider that the implementation for XXXX method is just a<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   * XXXXAsync().get(getSyncWaitTimeout(), TimeUnit.MILLISECONDS).<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   * @see #getOperationTimeout()<a name="line.94"></a>
-<span class="sourceLineNo">095</span>   */<a name="line.95"></a>
-<span class="sourceLineNo">096</span>  int getSyncWaitTimeout();<a name="line.96"></a>
-<span class="sourceLineNo">097</span><a name="line.97"></a>
-<span class="sourceLineNo">098</span>  @Override<a name="line.98"></a>
-<span class="sourceLineNo">099</span>  void abort(String why, Throwable e);<a name="line.99"></a>
-<span class="sourceLineNo">100</span><a name="line.100"></a>
-<span class="sourceLineNo">101</span>  @Override<a name="line.101"></a>
-<span class="sourceLineNo">102</span>  boolean isAborted();<a name="line.102"></a>
-<span class="sourceLineNo">103</span><a name="line.103"></a>
-<span class="sourceLineNo">104</span>  /**<a name="line.104"></a>
-<span class="sourceLineNo">105</span>   * @return Connection used by this object.<a name="line.105"></a>
-<span class="sourceLineNo">106</span>   */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>  Connection getConnection();<a name="line.107"></a>
-<span class="sourceLineNo">108</span><a name="line.108"></a>
-<span class="sourceLineNo">109</span>  /**<a name="line.109"></a>
-<span class="sourceLineNo">110</span>   * @param tableName Table to check.<a name="line.110"></a>
-<span class="sourceLineNo">111</span>   * @return &lt;code&gt;true&lt;/code&gt; if table exists already.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>   * @throws IOException<a name="line.112"></a>
-<span class="sourceLineNo">113</span>   */<a name="line.113"></a>
-<span class="sourceLineNo">114</span>  boolean tableExists(TableName tableName) throws IOException;<a name="line.114"></a>
-<span class="sourceLineNo">115</span><a name="line.115"></a>
-<span class="sourceLineNo">116</span>  /**<a name="line.116"></a>
-<span class="sourceLineNo">117</span>   * List all the userspace tables.<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   *<a name="line.118"></a>
-<span class="sourceLineNo">119</span>   * @return a list of TableDescriptors<a name="line.119"></a>
-<span class="sourceLineNo">120</span>   * @throws IOException if a remote or network exception occurs<a name="line.120"></a>
-<span class="sourceLineNo">121</span>   */<a name="line.121"></a>
-<span class="sourceLineNo">122</span>  List&lt;TableDescriptor&gt; listTableDescriptors() throws IOException;<a name="line.122"></a>
-<span class="sourceLineNo">123</span><a name="line.123"></a>
-<span class="sourceLineNo">124</span>  /**<a name="line.124"></a>
-<span class="sourceLineNo">125</span>   * List all the userspace tables that match the given pattern.<a name="line.125"></a>
-<span class="sourceLineNo">126</span>   *<a name="line.126"></a>
-<span class="sourceLineNo">127</span>   * @param pattern The compiled regular expression to match against<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   * @return a list of TableDescriptors<a name="line.128"></a>
-<span class="sourceLineNo">129</span>   * @throws IOException if a remote or network exception occurs<a name="line.129"></a>
-<span class="sourceLineNo">130</span>   * @see #listTableDescriptors()<a name="line.130"></a>
-<span class="sourceLineNo">131</span>   */<a name="line.131"></a>
-<span class="sourceLineNo">132</span>  default List&lt;TableDescriptor&gt; listTableDescriptors(Pattern pattern) throws IOException {<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    return listTableDescriptors(pattern, false);<a name="line.133"></a>
-<span class="sourceLineNo">134</span>  }<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>  /**<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   * List all the tables matching the given pattern.<a name="line.137"></a>
-<span class="sourceLineNo">138</span>   *<a name="line.138"></a>
-<span class="sourceLineNo">139</span>   * @param pattern The compiled regular expression to match against<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   * @param includeSysTables &lt;code&gt;false&lt;/code&gt; to match only against userspace tables<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   * @return a list of TableDescriptors<a name="line.141"></a>
-<span class="sourceLineNo">142</span>   * @throws IOException if a remote or network exception occurs<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   * @see #listTableDescriptors()<a name="line.143"></a>
-<span class="sourceLineNo">144</span>   */<a name="line.144"></a>
-<span class="sourceLineNo">145</span>  List&lt;TableDescriptor&gt; listTableDescriptors(Pattern pattern, boolean includeSysTables)<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      throws IOException;<a name="line.146"></a>
-<span class="sourceLineNo">147</span><a name="line.147"></a>
-<span class="sourceLineNo">148</span>  /**<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   * List all of the names of userspace tables.<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   *<a name="line.150"></a>
-<span class="sourceLineNo">151</span>   * @return TableName[] table names<a name="line.151"></a>
-<span class="sourceLineNo">152</span>   * @throws IOException if a remote or network exception occurs<a name="line.152"></a>
-<span class="sourceLineNo">153</span>   */<a name="line.153"></a>
-<span class="sourceLineNo">154</span>  TableName[] listTableNames() throws IOException;<a name="line.154"></a>
-<span class="sourceLineNo">155</span><a name="line.155"></a>
-<span class="sourceLineNo">156</span>  /**<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   * List all of the names of userspace tables.<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   * @param pattern The regular expression to match against<a name="line.158"></a>
-<span class="sourceLineNo">159</span>   * @return array of table names<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   * @throws IOException if a remote or network exception occurs<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   */<a name="line.161"></a>
-<span class="sourceLineNo">162</span>  default TableName[] listTableNames(Pattern pattern) throws IOException {<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    return listTableNames(pattern, false);<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  }<a name="line.164"></a>
-<span class="sourceLineNo">165</span><a name="line.165"></a>
-<span class="sourceLineNo">166</span>  /**<a name="line.166"></a>
-<span class="sourceLineNo">167</span>   * List all of the names of userspace tables.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>   * @param pattern The regular expression to match against<a name="line.168"></a>
-<span class="sourceLineNo">169</span>   * @param includeSysTables &lt;code&gt;false&lt;/code&gt; to match only against userspace tables<a name="line.169"></a>
-<span class="sourceLineNo">170</span>   * @return TableName[] table names<a name="line.170"></a>
-<span class="sourceLineNo">171</span>   * @throws IOException if a remote or network exception occurs<a name="line.171"></a>
-<span class="sourceLineNo">172</span>   */<a name="line.172"></a>
-<span class="sourceLineNo">173</span>  TableName[] listTableNames(Pattern pattern, boolean includeSysTables)<a name="line.173"></a>
-<span class="sourceLineNo">174</span>      throws IOException;<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span>  /**<a name="line.176"></a>
-<span class="sourceLineNo">177</span>   * Get a table descriptor.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>   *<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   * @param tableName as a {@link TableName}<a name="line.179"></a>
-<span class="sourceLineNo">180</span>   * @return the tableDescriptor<a name="line.180"></a>
-<span class="sourceLineNo">181</span>   * @throws org.apache.hadoop.hbase.TableNotFoundException<a name="line.181"></a>
-<span class="sourceLineNo">182</span>   * @throws IOException if a remote or network exception occurs<a name="line.182"></a>
-<span class="sourceLineNo">183</span>   */<a name="line.183"></a>
-<span class="sourceLineNo">184</span>  TableDescriptor getDescriptor(TableName tableName)<a name="line.184"></a>
-<span class="sourceLineNo">185</span>      throws TableNotFoundException, IOException;<a name="line.185"></a>
-<span class="sourceLineNo">186</span><a name="line.186"></a>
-<span class="sourceLineNo">187</span>  /**<a name="line.187"></a>
-<span class="sourceLineNo">188</span>   * Creates a new table. Synchronous operation.<a name="line.188"></a>
-<span class="sourceLineNo">189</span>   *<a name="line.189"></a>
-<span class="sourceLineNo">190</span>   * @param desc table descriptor for table<a name="line.190"></a>
-<span class="sourceLineNo">191</span>   * @throws IllegalArgumentException if the table name is reserved<a name="line.191"></a>
-<span class="sourceLineNo">192</span>   * @throws org.apache.hadoop.hbase.MasterNotRunningException if master is not running<a name="line.192"></a>
-<span class="sourceLineNo">193</span>   * @throws org.apache.hadoop.hbase.TableExistsException if table already exists (If concurrent<a name="line.193"></a>
-<span class="sourceLineNo">194</span>   * threads, the table may have been created between test-for-existence and attempt-at-creation).<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   * @throws IOException if a remote or network exception occurs<a name="line.195"></a>
-<span class="sourceLineNo">196</span>   */<a name="line.196"></a>
-<span class="sourceLineNo">197</span>  void createTable(TableDescriptor desc) throws IOException;<a name="line.197"></a>
-<span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>  /**<a name="line.199"></a>
-<span class="sourceLineNo">200</span>   * Creates a new table with the specified number of regions.  The start key specified will become<a name="line.200"></a>
-<span class="sourceLineNo">201</span>   * the end key of the first region of the table, and the end key specified will become the start<a name="line.201"></a>
-<span class="sourceLineNo">202</span>   * key of the last region of the table (the first region has a null start key and the last region<a name="line.202"></a>
-<span class="sourceLineNo">203</span>   * has a null end key). BigInteger math will be used to divide the key range specified into enough<a name="line.203"></a>
-<span class="sourceLineNo">204</span>   * segments to make the required number of total regions. Synchronous operation.<a name="line.204"></a>
-<span class="sourceLineNo">205</span>   *<a name="line.205"></a>
-<span class="sourceLineNo">206</span>   * @param desc table descriptor for table<a name="line.206"></a>
-<span class="sourceLineNo">207</span>   * @param startKey beginning of key range<a name="line.207"></a>
-<span class="sourceLineNo">208</span>   * @param endKey end of key range<a name="line.208"></a>
-<span class="sourceLineNo">209</span>   * @param numRegions the total number of regions to create<a name="line.209"></a>
-<span class="sourceLineNo">210</span>   * @throws IllegalArgumentException if the table name is reserved<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   * @throws org.apache.hadoop.hbase.MasterNotRunningException if master is not running<a name="line.211"></a>
-<span class="sourceLineNo">212</span>   * @throws org.apache.hadoop.hbase.TableExistsException if table already exists (If concurrent<a name="line.212"></a>
-<span class="sourceLineNo">213</span>   * threads, the table may have been created between test-for-existence and attempt-at-creation).<a name="line.213"></a>
-<span class="sourceLineNo">214</span>   * @throws IOException<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   */<a name="line.215"></a>
-<span class="sourceLineNo">216</span>  void createTable(TableDescriptor desc, byte[] startKey, byte[] endKey, int numRegions)<a name="line.216"></a>
-<span class="sourceLineNo">217</span>      throws IOException;<a name="line.217"></a>
-<span class="sourceLineNo">218</span><a name="line.218"></a>
-<span class="sourceLineNo">219</span>  /**<a name="line.219"></a>
-<span class="sourceLineNo">220</span>   * Creates a new table with an initial set of empty regions defined by the specified split keys.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>   * The total number of regions created will be the number of split keys plus one. Synchronous<a name="line.221"></a>
-<span class="sourceLineNo">222</span>   * operation. Note : Avoid passing empty split key.<a name="line.222"></a>
-<span class="sourceLineNo">223</span>   *<a name="line.223"></a>
-<span class="sourceLineNo">224</span>   * @param desc table descriptor for table<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   * @param splitKeys array of split keys for the initial regions of the table<a name="line.225"></a>
-<span class="sourceLineNo">226</span>   * @throws IllegalArgumentException if the table name is reserved, if the split keys are repeated<a name="line.226"></a>
-<span class="sourceLineNo">227</span>   * and if the split key has empty byte array.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   * @throws org.apache.hadoop.hbase.MasterNotRunningException if master is not running<a name="line.228"></a>
-<span class="sourceLineNo">229</span>   * @throws org.apache.hadoop.hbase.TableExistsException if table already exists (If concurrent<a name="line.229"></a>
-<span class="sourceLineNo">230</span>   * threads, the table may have been created between test-for-existence and attempt-at-creation).<a name="line.230"></a>
-<span class="sourceLineNo">231</span>   * @throws IOException<a name="line.231"></a>
-<span class="sourceLineNo">232</span>   */<a name="line.232"></a>
-<span class="sourceLineNo">233</span>  default void createTable(TableDescriptor desc, byte[][] splitKeys) throws IOException {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    get(createTableAsync(desc, splitKeys), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>  }<a name="line.235"></a>
-<span class="sourceLineNo">236</span><a name="line.236"></a>
-<span class="sourceLineNo">237</span>  /**<a name="line.237"></a>
-<span class="sourceLineNo">238</span>   * Creates a new table but does not block and wait for it to come online.<a name="line.238"></a>
-<span class="sourceLineNo">239</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.239"></a>
-<span class="sourceLineNo">240</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.240"></a>
-<span class="sourceLineNo">241</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.241"></a>
-<span class="sourceLineNo">242</span>   * operation to complete.<a name="line.242"></a>
-<span class="sourceLineNo">243</span>   * Throws IllegalArgumentException Bad table name, if the split keys<a name="line.243"></a>
-<span class="sourceLineNo">244</span>   *    are repeated and if the split key has empty byte array.<a name="line.244"></a>
-<span class="sourceLineNo">245</span>   *<a name="line.245"></a>
-<span class="sourceLineNo">246</span>   * @param desc table descriptor for table<a name="line.246"></a>
-<span class="sourceLineNo">247</span>   * @param splitKeys keys to check if the table has been created with all split keys<a name="line.247"></a>
-<span class="sourceLineNo">248</span>   * @throws IOException if a remote or network exception occurs<a name="line.248"></a>
-<span class="sourceLineNo">249</span>   * @return the result of the async creation. You can use Future.get(long, TimeUnit)<a name="line.249"></a>
-<span class="sourceLineNo">250</span>   *    to wait on the operation to complete.<a name="line.250"></a>
-<span class="sourceLineNo">251</span>   */<a name="line.251"></a>
-<span class="sourceLineNo">252</span>  Future&lt;Void&gt; createTableAsync(TableDescriptor desc, byte[][] splitKeys)<a name="line.252"></a>
-<span class="sourceLineNo">253</span>      throws IOException;<a name="line.253"></a>
-<span class="sourceLineNo">254</span><a name="line.254"></a>
-<span class="sourceLineNo">255</span>  /**<a name="line.255"></a>
-<span class="sourceLineNo">256</span>   * Deletes a table. Synchronous operation.<a name="line.256"></a>
-<span class="sourceLineNo">257</span>   * @param tableName name of table to delete<a name="line.257"></a>
-<span class="sourceLineNo">258</span>   * @throws IOException if a remote or network exception occurs<a name="line.258"></a>
-<span class="sourceLineNo">259</span>   */<a name="line.259"></a>
-<span class="sourceLineNo">260</span>  default void deleteTable(TableName tableName) throws IOException {<a name="line.260"></a>
-<span class="sourceLineNo">261</span>    get(deleteTableAsync(tableName), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.261"></a>
-<span class="sourceLineNo">262</span>  }<a name="line.262"></a>
-<span class="sourceLineNo">263</span><a name="line.263"></a>
-<span class="sourceLineNo">264</span>  /**<a name="line.264"></a>
-<span class="sourceLineNo">265</span>   * Deletes the table but does not block and wait for it to be completely removed.<a name="line.265"></a>
-<span class="sourceLineNo">266</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.266"></a>
-<span class="sourceLineNo">267</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.267"></a>
-<span class="sourceLineNo">268</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.268"></a>
-<span class="sourceLineNo">269</span>   * operation to complete.<a name="line.269"></a>
-<span class="sourceLineNo">270</span>   *<a name="line.270"></a>
-<span class="sourceLineNo">271</span>   * @param tableName name of table to delete<a name="line.271"></a>
-<span class="sourceLineNo">272</span>   * @throws IOException if a remote or network exception occurs<a name="line.272"></a>
-<span class="sourceLineNo">273</span>   * @return the result of the async delete. You can use Future.get(long, TimeUnit)<a name="line.273"></a>
-<span class="sourceLineNo">274</span>   *    to wait on the operation to complete.<a name="line.274"></a>
-<span class="sourceLineNo">275</span>   */<a name="line.275"></a>
-<span class="sourceLineNo">276</span>  Future&lt;Void&gt; deleteTableAsync(TableName tableName) throws IOException;<a name="line.276"></a>
-<span class="sourceLineNo">277</span><a name="line.277"></a>
-<span class="sourceLineNo">278</span>  /**<a name="line.278"></a>
-<span class="sourceLineNo">279</span>   * Truncate a table. Synchronous operation.<a name="line.279"></a>
-<span class="sourceLineNo">280</span>   * @param tableName name of table to truncate<a name="line.280"></a>
-<span class="sourceLineNo">281</span>   * @param preserveSplits &lt;code&gt;true&lt;/code&gt; if the splits should be preserved<a name="line.281"></a>
-<span class="sourceLineNo">282</span>   * @throws IOException if a remote or network exception occurs<a name="line.282"></a>
-<span class="sourceLineNo">283</span>   */<a name="line.283"></a>
-<span class="sourceLineNo">284</span>  default void truncateTable(TableName tableName, boolean preserveSplits) throws IOException {<a name="line.284"></a>
-<span class="sourceLineNo">285</span>    get(truncateTableAsync(tableName, preserveSplits), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.285"></a>
-<span class="sourceLineNo">286</span>  }<a name="line.286"></a>
-<span class="sourceLineNo">287</span><a name="line.287"></a>
-<span class="sourceLineNo">288</span>  /**<a name="line.288"></a>
-<span class="sourceLineNo">289</span>   * Truncate the table but does not block and wait for it to be completely enabled. You can use<a name="line.289"></a>
-<span class="sourceLineNo">290</span>   * Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.290"></a>
-<span class="sourceLineNo">291</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.291"></a>
-<span class="sourceLineNo">292</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.292"></a>
-<span class="sourceLineNo">293</span>   * @param tableName name of table to delete<a name="line.293"></a>
-<span class="sourceLineNo">294</span>   * @param preserveSplits &lt;code&gt;true&lt;/code&gt; if the splits should be preserved<a name="line.294"></a>
-<span class="sourceLineNo">295</span>   * @throws IOException if a remote or network exception occurs<a name="line.295"></a>
-<span class="sourceLineNo">296</span>   * @return the result of the async truncate. You can use Future.get(long, TimeUnit) to wait on the<a name="line.296"></a>
-<span class="sourceLineNo">297</span>   *         operation to complete.<a name="line.297"></a>
-<span class="sourceLineNo">298</span>   */<a name="line.298"></a>
-<span class="sourceLineNo">299</span>  Future&lt;Void&gt; truncateTableAsync(TableName tableName, boolean preserveSplits)<a name="line.299"></a>
-<span class="sourceLineNo">300</span>      throws IOException;<a name="line.300"></a>
-<span class="sourceLineNo">301</span><a name="line.301"></a>
-<span class="sourceLineNo">302</span>  /**<a name="line.302"></a>
-<span class="sourceLineNo">303</span>   * Enable a table. May timeout. Use {@link #enableTableAsync(org.apache.hadoop.hbase.TableName)}<a name="line.303"></a>
-<span class="sourceLineNo">304</span>   * and {@link #isTableEnabled(org.apache.hadoop.hbase.TableName)} instead. The table has to be in<a name="line.304"></a>
-<span class="sourceLineNo">305</span>   * disabled state for it to be enabled.<a name="line.305"></a>
-<span class="sourceLineNo">306</span>   * @param tableName name of the table<a name="line.306"></a>
-<span class="sourceLineNo">307</span>   * @throws IOException if a remote or network exception occurs There could be couple types of<a name="line.307"></a>
-<span class="sourceLineNo">308</span>   *           IOException TableNotFoundException means the table doesn't exist.<a name="line.308"></a>
-<span class="sourceLineNo">309</span>   *           TableNotDisabledException means the table isn't in disabled state.<a name="line.309"></a>
-<span class="sourceLineNo">310</span>   * @see #isTableEnabled(org.apache.hadoop.hbase.TableName)<a name="line.310"></a>
-<span class="sourceLineNo">311</span>   * @see #disableTable(org.apache.hadoop.hbase.TableName)<a name="line.311"></a>
-<span class="sourceLineNo">312</span>   * @see #enableTableAsync(org.apache.hadoop.hbase.TableName)<a name="line.312"></a>
-<span class="sourceLineNo">313</span>   */<a name="line.313"></a>
-<span class="sourceLineNo">314</span>  default void enableTable(TableName tableName) throws IOException {<a name="line.314"></a>
-<span class="sourceLineNo">315</span>    get(enableTableAsync(tableName), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.315"></a>
-<span class="sourceLineNo">316</span>  }<a name="line.316"></a>
-<span class="sourceLineNo">317</span><a name="line.317"></a>
-<span class="sourceLineNo">318</span>  /**<a name="line.318"></a>
-<span class="sourceLineNo">319</span>   * Enable the table but does not block and wait for it to be completely enabled.<a name="line.319"></a>
-<span class="sourceLineNo">320</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.320"></a>
-<span class="sourceLineNo">321</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.321"></a>
-<span class="sourceLineNo">322</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.322"></a>
-<span class="sourceLineNo">323</span>   * operation to complete.<a name="line.323"></a>
-<span class="sourceLineNo">324</span>   *<a name="line.324"></a>
-<span class="sourceLineNo">325</span>   * @param tableName name of table to delete<a name="line.325"></a>
-<span class="sourceLineNo">326</span>   * @throws IOException if a remote or network exception occurs<a name="line.326"></a>
-<span class="sourceLineNo">327</span>   * @return the result of the async enable. You can use Future.get(long, TimeUnit)<a name="line.327"></a>
-<span class="sourceLineNo">328</span>   *    to wait on the operation to complete.<a name="line.328"></a>
-<span class="sourceLineNo">329</span>   */<a name="line.329"></a>
-<span class="sourceLineNo">330</span>  Future&lt;Void&gt; enableTableAsync(TableName tableName) throws IOException;<a name="line.330"></a>
-<span class="sourceLineNo">331</span><a name="line.331"></a>
-<span class="sourceLineNo">332</span>  /**<a name="line.332"></a>
-<span class="sourceLineNo">333</span>   * Disable the table but does not block and wait for it to be completely disabled.<a name="line.333"></a>
-<span class="sourceLineNo">334</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.334"></a>
-<span class="sourceLineNo">335</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.335"></a>
-<span class="sourceLineNo">336</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.336"></a>
-<span class="sourceLineNo">337</span>   * operation to complete.<a name="line.337"></a>
-<span class="sourceLineNo">338</span>   *<a name="line.338"></a>
-<span class="sourceLineNo">339</span>   * @param tableName name of table to delete<a name="line.339"></a>
-<span class="sourceLineNo">340</span>   * @throws IOException if a remote or network exception occurs<a name="line.340"></a>
-<span class="sourceLineNo">341</span>   * @return the result of the async disable. You can use Future.get(long, TimeUnit)<a name="line.341"></a>
-<span class="sourceLineNo">342</span>   *    to wait on the operation to complete.<a name="line.342"></a>
-<span class="sourceLineNo">343</span>   */<a name="line.343"></a>
-<span class="sourceLineNo">344</span>  Future&lt;Void&gt; disableTableAsync(TableName tableName) throws IOException;<a name="line.344"></a>
-<span class="sourceLineNo">345</span><a name="line.345"></a>
-<span class="sourceLineNo">346</span>  /**<a name="line.346"></a>
-<span class="sourceLineNo">347</span>   * Disable table and wait on completion. May timeout eventually. Use<a name="line.347"></a>
-<span class="sourceLineNo">348</span>   * {@link #disableTableAsync(org.apache.hadoop.hbase.TableName)} and<a name="line.348"></a>
-<span class="sourceLineNo">349</span>   * {@link #isTableDisabled(org.apache.hadoop.hbase.TableName)} instead. The table has to be in<a name="line.349"></a>
-<span class="sourceLineNo">350</span>   * enabled state for it to be disabled.<a name="line.350"></a>
-<span class="sourceLineNo">351</span>   * @param tableName<a name="line.351"></a>
-<span class="sourceLineNo">352</span>   * @throws IOException There could be couple types of IOException TableNotFoundException means the<a name="line.352"></a>
-<span class="sourceLineNo">353</span>   *           table doesn't exist. TableNotEnabledException means the table isn't in enabled state.<a name="line.353"></a>
-<span class="sourceLineNo">354</span>   */<a name="line.354"></a>
-<span class="sourceLineNo">355</span>  default void disableTable(TableName tableName) throws IOException {<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    get(disableTableAsync(tableName), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.356"></a>
-<span class="sourceLineNo">357</span>  }<a name="line.357"></a>
-<span class="sourceLineNo">358</span><a name="line.358"></a>
-<span class="sourceLineNo">359</span>  /**<a name="line.359"></a>
-<span class="sourceLineNo">360</span>   * @param tableName name of table to check<a name="line.360"></a>
-<span class="sourceLineNo">361</span>   * @return &lt;code&gt;true&lt;/code&gt; if table is on-line<a name="line.361"></a>
-<span class="sourceLineNo">362</span>   * @throws IOException if a remote or network exception occurs<a name="line.362"></a>
-<span class="sourceLineNo">363</span>   */<a name="line.363"></a>
-<span class="sourceLineNo">364</span>  boolean isTableEnabled(TableName tableName) throws IOException;<a name="line.364"></a>
-<span class="sourceLineNo">365</span><a name="line.365"></a>
-<span class="sourceLineNo">366</span>  /**<a name="line.366"></a>
-<span class="sourceLineNo">367</span>   * @param tableName name of table to check<a name="line.367"></a>
-<span class="sourceLineNo">368</span>   * @return &lt;code&gt;true&lt;/code&gt; if table is off-line<a name="line.368"></a>
-<span class="sourceLineNo">369</span>   * @throws IOException if a remote or network exception occurs<a name="line.369"></a>
-<span class="sourceLineNo">370</span>   */<a name="line.370"></a>
-<span class="sourceLineNo">371</span>  boolean isTableDisabled(TableName tableName) throws IOException;<a name="line.371"></a>
-<span class="sourceLineNo">372</span><a name="line.372"></a>
-<span class="sourceLineNo">373</span>  /**<a name="line.373"></a>
-<span class="sourceLineNo">374</span>   * @param tableName name of table to check<a name="line.374"></a>
-<span class="sourceLineNo">375</span>   * @return &lt;code&gt;true&lt;/code&gt; if all regions of the table are available<a name="line.375"></a>
-<span class="sourceLineNo">376</span>   * @throws IOException if a remote or network exception occurs<a name="line.376"></a>
-<span class="sourceLineNo">377</span>   */<a name="line.377"></a>
-<span class="sourceLineNo">378</span>  boolean isTableAvailable(TableName tableName) throws IOException;<a name="line.378"></a>
-<span class="sourceLineNo">379</span><a name="line.379"></a>
-<span class="sourceLineNo">380</span>  /**<a name="line.380"></a>
-<span class="sourceLineNo">381</span>   * Add a column family to an existing table. Synchronous operation. Use<a name="line.381"></a>
-<span class="sourceLineNo">382</span>   * {@link #addColumnFamilyAsync(TableName, ColumnFamilyDescriptor)} instead because it returns a<a name="line.382"></a>
-<span class="sourceLineNo">383</span>   * {@link Future} from which you can learn whether success or failure.<a name="line.383"></a>
-<span class="sourceLineNo">384</span>   * @param tableName name of the table to add column family to<a name="line.384"></a>
-<span class="sourceLineNo">385</span>   * @param columnFamily column family descriptor of column family to be added<a name="line.385"></a>
-<span class="sourceLineNo">386</span>   * @throws IOException if a remote or network exception occurs<a name="line.386"></a>
-<span class="sourceLineNo">387</span>   */<a name="line.387"></a>
-<span class="sourceLineNo">388</span>  default void addColumnFamily(TableName tableName, ColumnFamilyDescriptor columnFamily)<a name="line.388"></a>
-<span class="sourceLineNo">389</span>      throws IOException {<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    get(addColumnFamilyAsync(tableName, columnFamily), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.390"></a>
-<span class="sourceLineNo">391</span>  }<a name="line.391"></a>
-<span class="sourceLineNo">392</span><a name="line.392"></a>
-<span class="sourceLineNo">393</span>  /**<a name="line.393"></a>
-<span class="sourceLineNo">394</span>   * Add a column family to an existing table. Asynchronous operation.<a name="line.394"></a>
-<span class="sourceLineNo">395</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.395"></a>
-<span class="sourceLineNo">396</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.396"></a>
-<span class="sourceLineNo">397</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.397"></a>
-<span class="sourceLineNo">398</span>   * operation to complete.<a name="line.398"></a>
-<span class="sourceLineNo">399</span>   *<a name="line.399"></a>
-<span class="sourceLineNo">400</span>   * @param tableName name of the table to add column family to<a name="line.400"></a>
-<span class="sourceLineNo">401</span>   * @param columnFamily column family descriptor of column family to be added<a name="line.401"></a>
-<span class="sourceLineNo">402</span>   * @throws IOException if a remote or network exception occurs<a name="line.402"></a>
-<span class="sourceLineNo">403</span>   * @return the result of the async add column family. You can use Future.get(long, TimeUnit) to<a name="line.403"></a>
-<span class="sourceLineNo">404</span>   *         wait on the operation to complete.<a name="line.404"></a>
-<span class="sourceLineNo">405</span>   */<a name="line.405"></a>
-<span class="sourceLineNo">406</span>  Future&lt;Void&gt; addColumnFamilyAsync(TableName tableName, ColumnFamilyDescriptor columnFamily)<a name="line.406"></a>
-<span class="sourceLineNo">407</span>      throws IOException;<a name="line.407"></a>
-<span class="sourceLineNo">408</span><a name="line.408"></a>
-<span class="sourceLineNo">409</span>  /**<a name="line.409"></a>
-<span class="sourceLineNo">410</span>   * Delete a column family from a table. Synchronous operation. Use<a name="line.410"></a>
-<span class="sourceLineNo">411</span>   * {@link #deleteColumnFamily(TableName, byte[])} instead because it returns a {@link Future} from<a name="line.411"></a>
-<span class="sourceLineNo">412</span>   * which you can learn whether success or failure.<a name="line.412"></a>
-<span class="sourceLineNo">413</span>   * @param tableName name of table<a name="line.413"></a>
-<span class="sourceLineNo">414</span>   * @param columnFamily name of column family to be deleted<a name="line.414"></a>
-<span class="sourceLineNo">415</span>   * @throws IOException if a remote or network exception occurs<a name="line.415"></a>
-<span class="sourceLineNo">416</span>   */<a name="line.416"></a>
-<span class="sourceLineNo">417</span>  default void deleteColumnFamily(TableName tableName, byte[] columnFamily) throws IOException {<a name="line.417"></a>
-<span class="sourceLineNo">418</span>    get(deleteColumnFamilyAsync(tableName, columnFamily), getSyncWaitTimeout(),<a name="line.418"></a>
-<span class="sourceLineNo">419</span>      TimeUnit.MILLISECONDS);<a name="line.419"></a>
-<span class="sourceLineNo">420</span>  }<a name="line.420"></a>
-<span class="sourceLineNo">421</span><a name="line.421"></a>
-<span class="sourceLineNo">422</span>  /**<a name="line.422"></a>
-<span class="sourceLineNo">423</span>   * Delete a column family from a table. Asynchronous operation.<a name="line.423"></a>
-<span class="sourceLineNo">424</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.424"></a>
-<span class="sourceLineNo">425</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.425"></a>
-<span class="sourceLineNo">426</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.426"></a>
-<span class="sourceLineNo">427</span>   * operation to complete.<a name="line.427"></a>
-<span class="sourceLineNo">428</span>   *<a name="line.428"></a>
-<span class="sourceLineNo">429</span>   * @param tableName name of table<a name="line.429"></a>
-<span class="sourceLineNo">430</span>   * @param columnFamily name of column family to be deleted<a name="line.430"></a>
-<span class="sourceLineNo">431</span>   * @throws IOException if a remote or network exception occurs<a name="line.431"></a>
-<span class="sourceLineNo">432</span>   * @return the result of the async delete column family. You can use Future.get(long, TimeUnit) to<a name="line.432"></a>
-<span class="sourceLineNo">433</span>   *         wait on the operation to complete.<a name="line.433"></a>
-<span class="sourceLineNo">434</span>   */<a name="line.434"></a>
-<span class="sourceLineNo">435</span>  Future&lt;Void&gt; deleteColumnFamilyAsync(TableName tableName, byte[] columnFamily)<a name="line.435"></a>
-<span class="sourceLineNo">436</span>      throws IOException;<a name="line.436"></a>
-<span class="sourceLineNo">437</span><a name="line.437"></a>
-<span class="sourceLineNo">438</span>  /**<a name="line.438"></a>
-<span class="sourceLineNo">439</span>   * Modify an existing column family on a table. Synchronous operation. Use<a name="line.439"></a>
-<span class="sourceLineNo">440</span>   * {@link #modifyColumnFamilyAsync(TableName, ColumnFamilyDescriptor)} instead because it returns<a name="line.440"></a>
-<span class="sourceLineNo">441</span>   * a {@link Future} from which you can learn whether success or failure.<a name="line.441"></a>
-<span class="sourceLineNo">442</span>   * @param tableName name of table<a name="line.442"></a>
-<span class="sourceLineNo">443</span>   * @param columnFamily new column family descriptor to use<a name="line.443"></a>
-<span class="sourceLineNo">444</span>   * @throws IOException if a remote or network exception occurs<a name="line.444"></a>
-<span class="sourceLineNo">445</span>   */<a name="line.445"></a>
-<span class="sourceLineNo">446</span>  default void modifyColumnFamily(TableName tableName, ColumnFamilyDescriptor columnFamily)<a name="line.446"></a>
-<span class="sourceLineNo">447</span>      throws IOException {<a name="line.447"></a>
-<span class="sourceLineNo">448</span>    get(modifyColumnFamilyAsync(tableName, columnFamily), getSyncWaitTimeout(),<a name="line.448"></a>
-<span class="sourceLineNo">449</span>      TimeUnit.MILLISECONDS);<a name="line.449"></a>
-<span class="sourceLineNo">450</span>  }<a name="line.450"></a>
-<span class="sourceLineNo">451</span><a name="line.451"></a>
-<span class="sourceLineNo">452</span>  /**<a name="line.452"></a>
-<span class="sourceLineNo">453</span>   * Modify an existing column family on a table. Asynchronous operation.<a name="line.453"></a>
-<span class="sourceLineNo">454</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.454"></a>
-<span class="sourceLineNo">455</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.455"></a>
-<span class="sourceLineNo">456</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.456"></a>
-<span class="sourceLineNo">457</span>   * operation to complete.<a name="line.457"></a>
-<span class="sourceLineNo">458</span>   *<a name="line.458"></a>
-<span class="sourceLineNo">459</span>   * @param tableName name of table<a name="line.459"></a>
-<span class="sourceLineNo">460</span>   * @param columnFamily new column family descriptor to use<a name="line.460"></a>
-<span class="sourceLineNo">461</span>   * @throws IOException if a remote or network exception occurs<a name="line.461"></a>
-<span class="sourceLineNo">462</span>   * @return the result of the async modify column family. You can use Future.get(long, TimeUnit) to<a name="line.462"></a>
-<span class="sourceLineNo">463</span>   *         wait on the operation to complete.<a name="line.463"></a>
-<span class="sourceLineNo">464</span>   */<a name="line.464"></a>
-<span class="sourceLineNo">465</span>  Future&lt;Void&gt; modifyColumnFamilyAsync(TableName tableName, ColumnFamilyDescriptor columnFamily)<a name="line.465"></a>
-<span class="sourceLineNo">466</span>      throws IOException;<a name="line.466"></a>
-<span class="sourceLineNo">467</span><a name="line.467"></a>
-<span class="sourceLineNo">468</span>  /**<a name="line.468"></a>
-<span class="sourceLineNo">469</span>   * Get all the online regions on a region server.<a name="line.469"></a>
-<span class="sourceLineNo">470</span>   *<a name="line.470"></a>
-<span class="sourceLineNo">471</span>   * @return List of {@link RegionInfo}<a name="line.471"></a>
-<span class="sourceLineNo">472</span>   * @throws java.io.IOException<a name="line.472"></a>
-<span class="sourceLineNo">473</span>   */<a name="line.473"></a>
-<span class="sourceLineNo">474</span>  List&lt;RegionInfo&gt; getRegions(ServerName serverName) throws IOException;<a name="line.474"></a>
-<span class="sourceLineNo">475</span><a name="line.475"></a>
-<span class="sourceLineNo">476</span>  /**<a name="line.476"></a>
-<span class="sourceLineNo">477</span>   * Flush a table. Synchronous operation.<a name="line.477"></a>
-<span class="sourceLineNo">478</span>   *<a name="line.478"></a>
-<span class="sourceLineNo">479</span>   * @param tableName table to flush<a name="line.479"></a>
-<span class="sourceLineNo">480</span>   * @throws IOException if a remote or network exception occurs<a name="line.480"></a>
-<span class="sourceLineNo">481</span>   */<a name="line.481"></a>
-<span class="sourceLineNo">482</span>  void flush(TableName tableName) throws IOException;<a name="line.482"></a>
-<span class="sourceLineNo">483</span><a name="line.483"></a>
-<span class="sourceLineNo">484</span>  /**<a name="line.484"></a>
-<span class="sourceLineNo">485</span>   * Flush an individual region. Synchronous operation.<a name="line.485"></a>
-<span class="sourceLineNo">486</span>   *<a name="line.486"></a>
-<span class="sourceLineNo">487</span>   * @param regionName region to flush<a name="line.487"></a>
-<span class="sourceLineNo">488</span>   * @throws IOException if a remote or network exception occurs<a name="line.488"></a>
-<span class="sourceLineNo">489</span>   */<a name="line.489"></a>
-<span class="sourceLineNo">490</span>  void flushRegion(byte[] regionName) throws IOException;<a name="line.490"></a>
-<span class="sourceLineNo">491</span><a name="line.491"></a>
-<span class="sourceLineNo">492</span>  /**<a name="line.492"></a>
-<span class="sourceLineNo">493</span>   * Flush all regions on the region server. Synchronous operation.<a name="line.493"></a>
-<span class="sourceLineNo">494</span>   * @param serverName the region server name to flush<a name="line.494"></a>
-<span class="sourceLineNo">495</span>   * @throws IOException if a remote or network exception occurs<a name="line.495"></a>
-<span class="sourceLineNo">496</span>   */<a name="line.496"></a>
-<span class="sourceLineNo">497</span>  void flushRegionServer(ServerName serverName) throws IOException;<a name="line.497"></a>
-<span class="sourceLineNo">498</span><a name="line.498"></a>
-<span class="sourceLineNo">499</span>  /**<a name="line.499"></a>
-<span class="sourceLineNo">500</span>   * Compact a table. Asynchronous operation in that this method requests that a<a name="line.500"></a>
-<span class="sourceLineNo">501</span>   * Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.501"></a>
-<span class="sourceLineNo">502</span>   * (it can take a while).<a name="line.502"></a>
-<span class="sourceLineNo">503</span>   *<a name="line.503"></a>
-<span class="sourceLineNo">504</span>   * @param tableName table to compact<a name="line.504"></a>
-<span class="sourceLineNo">505</span>   * @throws IOException if a remote or network exception occurs<a name="line.505"></a>
-<span class="sourceLineNo">506</span>   */<a name="line.506"></a>
-<span class="sourceLineNo">507</span>  void compact(TableName tableName) throws IOException;<a name="line.507"></a>
-<span class="sourceLineNo">508</span><a name="line.508"></a>
-<span class="sourceLineNo">509</span>  /**<a name="line.509"></a>
-<span class="sourceLineNo">510</span>   * Compact an individual region. Asynchronous operation in that this method requests that a<a name="line.510"></a>
-<span class="sourceLineNo">511</span>   * Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.511"></a>
-<span class="sourceLineNo">512</span>   * (it can take a while).<a name="line.512"></a>
-<span class="sourceLineNo">513</span>   *<a name="line.513"></a>
-<span class="sourceLineNo">514</span>   * @param regionName region to compact<a name="line.514"></a>
-<span class="sourceLineNo">515</span>   * @throws IOException if a remote or network exception occurs<a name="line.515"></a>
-<span class="sourceLineNo">516</span>   */<a name="line.516"></a>
-<span class="sourceLineNo">517</span>  void compactRegion(byte[] regionName) throws IOException;<a name="line.517"></a>
-<span class="sourceLineNo">518</span><a name="line.518"></a>
-<span class="sourceLineNo">519</span>  /**<a name="line.519"></a>
-<span class="sourceLineNo">520</span>   * Compact a column family within a table. Asynchronous operation in that this method requests<a name="line.520"></a>
-<span class="sourceLineNo">521</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.521"></a>
-<span class="sourceLineNo">522</span>   * (it can take a while).<a name="line.522"></a>
-<span class="sourceLineNo">523</span>   *<a name="line.523"></a>
-<span class="sourceLineNo">524</span>   * @param tableName table to compact<a name="line.524"></a>
-<span class="sourceLineNo">525</span>   * @param columnFamily column family within a table<a name="line.525"></a>
-<span class="sourceLineNo">526</span>   * @throws IOException if a remote or network exception occurs<a name="line.526"></a>
-<span class="sourceLineNo">527</span>   */<a name="line.527"></a>
-<span class="sourceLineNo">528</span>  void compact(TableName tableName, byte[] columnFamily)<a name="line.528"></a>
-<span class="sourceLineNo">529</span>    throws IOException;<a name="line.529"></a>
-<span class="sourceLineNo">530</span><a name="line.530"></a>
-<span class="sourceLineNo">531</span>  /**<a name="line.531"></a>
-<span class="sourceLineNo">532</span>   * Compact a column family within a region. Asynchronous operation in that this method requests<a name="line.532"></a>
-<span class="sourceLineNo">533</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.533"></a>
-<span class="sourceLineNo">534</span>   * (it can take a while).<a name="line.534"></a>
-<span class="sourceLineNo">535</span>   *<a name="line.535"></a>
-<span class="sourceLineNo">536</span>   * @param regionName region to compact<a name="line.536"></a>
-<span class="sourceLineNo">537</span>   * @param columnFamily column family within a region<a name="line.537"></a>
-<span class="sourceLineNo">538</span>   * @throws IOException if a remote or network exception occurs<a name="line.538"></a>
-<span class="sourceLineNo">539</span>   */<a name="line.539"></a>
-<span class="sourceLineNo">540</span>  void compactRegion(byte[] regionName, byte[] columnFamily)<a name="line.540"></a>
-<span class="sourceLineNo">541</span>    throws IOException;<a name="line.541"></a>
-<span class="sourceLineNo">542</span><a name="line.542"></a>
-<span class="sourceLineNo">543</span>  /**<a name="line.543"></a>
-<span class="sourceLineNo">544</span>   * Compact a table.  Asynchronous operation in that this method requests that a<a name="line.544"></a>
-<span class="sourceLineNo">545</span>   * Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.545"></a>
-<span class="sourceLineNo">546</span>   * (it can take a while).<a name="line.546"></a>
-<span class="sourceLineNo">547</span>   *<a name="line.547"></a>
-<span class="sourceLineNo">548</span>   * @param tableName table to compact<a name="line.548"></a>
-<span class="sourceLineNo">549</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.549"></a>
-<span class="sourceLineNo">550</span>   * @throws IOException if a remote or network exception occurs<a name="line.550"></a>
-<span class="sourceLineNo">551</span>   * @throws InterruptedException<a name="line.551"></a>
-<span class="sourceLineNo">552</span>   */<a name="line.552"></a>
-<span class="sourceLineNo">553</span>  void compact(TableName tableName, CompactType compactType)<a name="line.553"></a>
-<span class="sourceLineNo">554</span>    throws IOException, InterruptedException;<a name="line.554"></a>
-<span class="sourceLineNo">555</span><a name="line.555"></a>
-<span class="sourceLineNo">556</span>  /**<a name="line.556"></a>
-<span class="sourceLineNo">557</span>   * Compact a column family within a table.  Asynchronous operation in that this method<a name="line.557"></a>
-<span class="sourceLineNo">558</span>   * requests that a Compaction run and then it returns. It does not wait on the<a name="line.558"></a>
-<span class="sourceLineNo">559</span>   * completion of Compaction (it can take a while).<a name="line.559"></a>
-<span class="sourceLineNo">560</span>   *<a name="line.560"></a>
-<span class="sourceLineNo">561</span>   * @param tableName table to compact<a name="line.561"></a>
-<span class="sourceLineNo">562</span>   * @param columnFamily column family within a table<a name="line.562"></a>
-<span class="sourceLineNo">563</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.563"></a>
-<span class="sourceLineNo">564</span>   * @throws IOException if not a mob column family or if a remote or network exception occurs<a name="line.564"></a>
-<span class="sourceLineNo">565</span>   * @throws InterruptedException<a name="line.565"></a>
-<span class="sourceLineNo">566</span>   */<a name="line.566"></a>
-<span class="sourceLineNo">567</span>  void compact(TableName tableName, byte[] columnFamily, CompactType compactType)<a name="line.567"></a>
-<span class="sourceLineNo">568</span>    throws IOException, InterruptedException;<a name="line.568"></a>
-<span class="sourceLineNo">569</span><a name="line.569"></a>
-<span class="sourceLineNo">570</span>  /**<a name="line.570"></a>
-<span class="sourceLineNo">571</span>   * Major compact a table. Asynchronous operation in that this method requests<a name="line.571"></a>
-<span class="sourceLineNo">572</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.572"></a>
-<span class="sourceLineNo">573</span>   * (it can take a while).<a name="line.573"></a>
-<span class="sourceLineNo">574</span>   *<a name="line.574"></a>
-<span class="sourceLineNo">575</span>   * @param tableName table to major compact<a name="line.575"></a>
-<span class="sourceLineNo">576</span>   * @throws IOException if a remote or network exception occurs<a name="line.576"></a>
-<span class="sourceLineNo">577</span>   */<a name="line.577"></a>
-<span class="sourceLineNo">578</span>  void majorCompact(TableName tableName) throws IOException;<a name="line.578"></a>
-<span class="sourceLineNo">579</span><a name="line.579"></a>
-<span class="sourceLineNo">580</span>  /**<a name="line.580"></a>
-<span class="sourceLineNo">581</span>   * Major compact a table or an individual region. Asynchronous operation in that this method requests<a name="line.581"></a>
-<span class="sourceLineNo">582</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.582"></a>
-<span class="sourceLineNo">583</span>   * (it can take a while).<a name="line.583"></a>
-<span class="sourceLineNo">584</span>   *<a name="line.584"></a>
-<span class="sourceLineNo">585</span>   * @param regionName region to major compact<a name="line.585"></a>
-<span class="sourceLineNo">586</span>   * @throws IOException if a remote or network exception occurs<a name="line.586"></a>
-<span class="sourceLineNo">587</span>   */<a name="line.587"></a>
-<span class="sourceLineNo">588</span>  void majorCompactRegion(byte[] regionName) throws IOException;<a name="line.588"></a>
-<span class="sourceLineNo">589</span><a name="line.589"></a>
-<span class="sourceLineNo">590</span>  /**<a name="line.590"></a>
-<span class="sourceLineNo">591</span>   * Major compact a column family within a table. Asynchronous operation in that this method requests<a name="line.591"></a>
-<span class="sourceLineNo">592</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.592"></a>
-<span class="sourceLineNo">593</span>   * (it can take a while).<a name="line.593"></a>
-<span class="sourceLineNo">594</span>   *<a name="line.594"></a>
-<span class="sourceLineNo">595</span>   * @param tableName table to major compact<a name="line.595"></a>
-<span class="sourceLineNo">596</span>   * @param columnFamily column family within a table<a name="line.596"></a>
-<span class="sourceLineNo">597</span>   * @throws IOException if a remote or network exception occurs<a name="line.597"></a>
-<span class="sourceLineNo">598</span>   */<a name="line.598"></a>
-<span class="sourceLineNo">599</span>  void majorCompact(TableName tableName, byte[] columnFamily)<a name="line.599"></a>
-<span class="sourceLineNo">600</span>    throws IOException;<a name="line.600"></a>
-<span class="sourceLineNo">601</span><a name="line.601"></a>
-<span class="sourceLineNo">602</span>  /**<a name="line.602"></a>
-<span class="sourceLineNo">603</span>   * Major compact a column family within region. Asynchronous operation in that this method requests<a name="line.603"></a>
-<span class="sourceLineNo">604</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.604"></a>
-<span class="sourceLineNo">605</span>   * (it can take a while).<a name="line.605"></a>
-<span class="sourceLineNo">606</span>   *<a name="line.606"></a>
-<span class="sourceLineNo">607</span>   * @param regionName egion to major compact<a name="line.607"></a>
-<span class="sourceLineNo">608</span>   * @param columnFamily column family within a region<a name="line.608"></a>
-<span class="sourceLineNo">609</span>   * @throws IOException if a remote or network exception occurs<a name="line.609"></a>
-<span class="sourceLineNo">610</span>   */<a name="line.610"></a>
-<span class="sourceLineNo">611</span>  void majorCompactRegion(byte[] regionName, byte[] columnFamily)<a name="line.611"></a>
-<span class="sourceLineNo">612</span>    throws IOException;<a name="line.612"></a>
-<span class="sourceLineNo">613</span><a name="line.613"></a>
-<span class="sourceLineNo">614</span>  /**<a name="line.614"></a>
-<span class="sourceLineNo">615</span>   * Major compact a table.  Asynchronous operation in that this method requests that a<a name="line.615"></a>
-<span class="sourceLineNo">616</span>   * Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.616"></a>
-<span class="sourceLineNo">617</span>   * (it can take a while).<a name="line.617"></a>
-<span class="sourceLineNo">618</span>   *<a name="line.618"></a>
-<span class="sourceLineNo">619</span>   * @param tableName table to compact<a name="line.619"></a>
-<span class="sourceLineNo">620</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.620"></a>
-<span class="sourceLineNo">621</span>   * @throws IOException if a remote or network exception occurs<a name="line.621"></a>
-<span class="sourceLineNo">622</span>   * @throws InterruptedException<a name="line.622"></a>
-<span class="sourceLineNo">623</span>   */<a name="line.623"></a>
-<span class="sourceLineNo">624</span>  void majorCompact(TableName tableName, CompactType compactType)<a name="line.624"></a>
-<span class="sourceLineNo">625</span>    throws IOException, InterruptedException;<a name="line.625"></a>
-<span class="sourceLineNo">626</span><a name="line.626"></a>
-<span class="sourceLineNo">627</span>  /**<a name="line.627"></a>
-<span class="sourceLineNo">628</span>   * Major compact a column family within a table.  Asynchronous operation in that this method requests that a<a name="line.628"></a>
-<span class="sourceLineNo">629</span>   * Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.629"></a>
-<span class="sourceLineNo">630</span>   * (it can take a while).<a name="line.630"></a>
-<span class="sourceLineNo">631</span>   *<a name="line.631"></a>
-<span class="sourceLineNo">632</span>   * @param tableName table to compact<a name="line.632"></a>
-<span class="sourceLineNo">633</span>   * @param columnFamily column family within a table<a name="line.633"></a>
-<span class="sourceLineNo">634</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.634"></a>
-<span class="sourceLineNo">635</span>   * @throws IOException if not a mob column family or if a remote or network exception occurs<a name="line.635"></a>
-<span class="sourceLineNo">636</span>   * @throws InterruptedException<a name="line.636"></a>
-<span class="sourceLineNo">637</span>   */<a name="line.637"></a>
-<span class="sourceLineNo">638</span>  void majorCompact(TableName tableName, byte[] columnFamily, CompactType compactType)<a name="line.638"></a>
-<span class="sourceLineNo">639</span>    throws IOException, InterruptedException;<a name="line.639"></a>
-<span class="sourceLineNo">640</span><a name="line.640"></a>
-<span class="sourceLineNo">641</span>  /**<a name="line.641"></a>
-<span class="sourceLineNo">642</span>   * Turn the compaction on or off. Disabling compactions will also interrupt any currently ongoing<a name="line.642"></a>
-<span class="sourceLineNo">643</span>   * compactions. This state is ephemeral. The setting will be lost on restart. Compaction<a name="line.643"></a>
-<span class="sourceLineNo">644</span>   * can also be enabled/disabled by modifying configuration hbase.regionserver.compaction.enabled<a name="line.644"></a>
-<span class="sourceLineNo">645</span>   * in hbase-site.xml.<a name="line.645"></a>
-<span class="sourceLineNo">646</span>   *<a name="line.646"></a>
-<span class="sourceLineNo">647</span>   * @param switchState     Set to &lt;code&gt;true&lt;/code&gt; to enable, &lt;code&gt;false&lt;/code&gt; to disable.<a name="line.647"></a>
-<span class="sourceLineNo">648</span>   * @param serverNamesList list of region servers.<a name="line.648"></a>
-<span class="sourceLineNo">649</span>   * @return Previous compaction states for region servers<a name="line.649"></a>
-<span class="sourceLineNo">650</span>   */<a name="line.650"></a>
-<span class="sourceLineNo">651</span>  Map&lt;ServerName, Boolean&gt; compactionSwitch(boolean switchState, List&lt;String&gt; serverNamesList)<a name="line.651"></a>
-<span class="sourceLineNo">652</span>      throws IOException;<a name="line.652"></a>
-<span class="sourceLineNo">653</span><a name="line.653"></a>
-<span class="sourceLineNo">654</span>  /**<a name="line.654"></a>
-<span class="sourceLineNo">655</span>   * Compact all regions on the region server. Asynchronous operation in that this method requests<a name="line.655"></a>
-<span class="sourceLineNo">656</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction (it<a name="line.656"></a>
-<span class="sourceLineNo">657</span>   * can take a while).<a name="line.657"></a>
-<span class="sourceLineNo">658</span>   * @param serverName the region server name<a name="line.658"></a>
-<span class="sourceLineNo">659</span>   * @throws IOException if a remote or network exception occurs<a name="line.659"></a>
-<span class="sourceLineNo">660</span>   */<a name="line.660"></a>
-<span class="sourceLineNo">661</span>  void compactRegionServer(ServerName serverName) throws IOException;<a name="line.661"></a>
-<span class="sourceLineNo">662</span><a name="line.662"></a>
-<span class="sourceLineNo">663</span>  /**<a name="line.663"></a>
-<span class="sourceLineNo">664</span>   * Major compact all regions on the region server. Asynchronous operation in that this method<a name="line.664"></a>
-<span class="sourceLineNo">665</span>   * requests that a Compaction run and then it returns. It does not wait on the completion of<a name="line.665"></a>
-<span class="sourceLineNo">666</span>   * Compaction (it can take a while).<a name="line.666"></a>
-<span class="sourceLineNo">667</span>   * @param serverName the region server name<a name="line.667"></a>
-<span class="sourceLineNo">668</span>   * @throws IOException if a remote or network exception occurs<a name="line.668"></a>
-<span class="sourceLineNo">669</span>   */<a name="line.669"></a>
-<span class="sourceLineNo">670</span>  void majorCompactRegionServer(ServerName serverName) throws IOException;<a name="line.670"></a>
-<span class="sourceLineNo">671</span><a name="line.671"></a>
-<span class="sourceLineNo">672</span>  /**<a name="line.672"></a>
-<span class="sourceLineNo">673</span>   * Move the region &lt;code&gt;r&lt;/code&gt; to &lt;code&gt;dest&lt;/code&gt;.<a name="line.673"></a>
-<span class="sourceLineNo">674</span>   *<a name="line.674"></a>
-<span class="sourceLineNo">675</span>   * @param encodedRegionName The encoded region name; i.e. the hash that makes up the region name<a name="line.675"></a>
-<span class="sourceLineNo">676</span>   * suffix: e.g. if regionname is<a name="line.676"></a>
-<span class="sourceLineNo">677</span>   * &lt;code&gt;TestTable,0094429456,1289497600452.527db22f95c8a9e0116f0cc13c680396.&lt;/code&gt;,<a name="line.677"></a>
-<span class="sourceLineNo">678</span>   * then the encoded region name is: &lt;code&gt;527db22f95c8a9e0116f0cc13c680396&lt;/code&gt;.<a name="line.678"></a>
-<span class="sourceLineNo">679</span>   * @param destServerName The servername of the destination regionserver.  If passed the empty byte<a name="line.679"></a>
-<span class="sourceLineNo">680</span>   * array we'll assign to a random server.  A server name is made of host, port and startcode.<a name="line.680"></a>
-<span class="sourceLineNo">681</span>   * Here is an example: &lt;code&gt; host187.example.com,60020,1289493121758&lt;/code&gt;<a name="line.681"></a>
-<span class="sourceLineNo">682</span>   * @throws IOException if we can't find a region named<a name="line.682"></a>
-<span class="sourceLineNo">683</span>   * &lt;code&gt;encodedRegionName&lt;/code&gt;<a name="line.683"></a>
-<span class="sourceLineNo">684</span>   */<a name="line.684"></a>
-<span class="sourceLineNo">685</span>  void move(byte[] encodedRegionName, byte[] destServerName) throws IOException;<a name="line.685"></a>
-<span class="sourceLineNo">686</span><a name="line.686"></a>
-<span class="sourceLineNo">687</span>  /**<a name="line.687"></a>
-<span class="sourceLineNo">688</span>   * Assign a Region.<a name="line.688"></a>
-<span class="sourceLineNo">689</span>   * @param regionName Region name to assign.<a name="line.689"></a>
-<span class="sourceLineNo">690</span>   */<a name="line.690"></a>
-<span class="sourceLineNo">691</span>  void assign(byte[] regionName) throws IOException;<a name="line.691"></a>
-<span class="sourceLineNo">692</span><a name="line.692"></a>
-<span class="sourceLineNo">693</span>  /**<a name="line.693"></a>
-<span class="sourceLineNo">694</span>   * Unassign a region from current hosting regionserver.  Region will then be assigned to a<a name="line.694"></a>
-<span class="sourceLineNo">695</span>   * regionserver chosen at random.  Region could be reassigned back to the same server.  Use {@link<a name="line.695"></a>
-<span class="sourceLineNo">696</span>   * #move(byte[], byte[])} if you want to control the region movement.<a name="line.696"></a>
-<span class="sourceLineNo">697</span>   *<a name="line.697"></a>
-<span class="sourceLineNo">698</span>   * @param regionName Region to unassign. Will clear any existing RegionPlan if one found.<a name="line.698"></a>
-<span class="sourceLineNo">699</span>   * @param force If &lt;code&gt;true&lt;/code&gt;, force unassign (Will remove region from regions-in-transition too if<a name="line.699"></a>
-<span class="sourceLineNo">700</span>   * present. If results in double assignment use hbck -fix to resolve. To be used by experts).<a name="line.700"></a>
-<span class="sourceLineNo">701</span>   */<a name="line.701"></a>
-<span class="sourceLineNo">702</span>  void unassign(byte[] regionName, boolean force)<a name="line.702"></a>
-<span class="sourceLineNo">703</span>      throws IOException;<a name="line.703"></a>
-<span class="sourceLineNo">704</span><a name="line.704"></a>
-<span class="sourceLineNo">705</span>  /**<a name="line.705"></a>
-<span class="sourceLineNo">706</span>   * Offline specified region from master's in-memory state. It will not attempt to reassign the<a name="line.706"></a>
-<span class="sourceLineNo">707</span>   * region as in unassign. This API can be used when a region not served by any region server and<a name="line.707"></a>
-<span class="sourceLineNo">708</span>   * still online as per Master's in memory state. If this API is incorrectly used on active region<a name="line.708"></a>
-<span class="sourceLineNo">709</span>   * then master will loose track of that region. This is a special method that should be used by<a name="line.709"></a>
-<span class="sourceLineNo">710</span>   * experts or hbck.<a name="line.710"></a>
-<span class="sourceLineNo">711</span>   *<a name="line.711"></a>
-<span class="sourceLineNo">712</span>   * @param regionName Region to offline.<a name="line.712"></a>
-<span class="sourceLineNo">713</span>   * @throws IOException<a name="line.713"></a>
-<span class="sourceLineNo">714</span>   */<a name="line.714"></a>
-<span class="sourceLineNo">715</span>  void offline(byte[] regionName) throws IOException;<a name="line.715"></a>
-<span class="sourceLineNo">716</span><a name="line.716"></a>
-<span class="sourceLineNo">717</span>  /**<a name="line.717"></a>
-<span class="sourceLineNo">718</span>   * Turn the load balancer on or off.<a name="line.718"></a>
-<span class="sourceLineNo">719</span>   * @param onOrOff Set to &lt;code&gt;true&lt;/code&gt; to enable, &lt;code&gt;false&lt;/code&gt; to disable.<a name="line.719"></a>
-<span class="sourceLineNo">720</span>   * @param synchronous If &lt;code&gt;true&lt;/code&gt;, it waits until current balance() call, if outstanding,<a name="line.720"></a>
-<span class="sourceLineNo">721</span>   *          to return.<a name="line.721"></a>
-<span class="sourceLineNo">722</span>   * @return Previous balancer value<a name="line.722"></a>
-<span class="sourceLineNo">723</span>   */<a name="line.723"></a>
-<span class="sourceLineNo">724</span>  boolean balancerSwitch(boolean onOrOff, boolean synchronous) throws IOException;<a name="line.724"></a>
-<span class="sourceLineNo">725</span><a name="line.725"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.security.access.UserPermission;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.snapshot.HBaseSnapshotException;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.snapshot.RestoreSnapshotException;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.snapshot.SnapshotCreationException;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.snapshot.UnknownSnapshotException;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.62"></a>
+<span class="sourceLineNo">063</span><a name="line.63"></a>
+<span class="sourceLineNo">064</span>/**<a name="line.64"></a>
+<span class="sourceLineNo">065</span> * The administrative API for HBase. Obtain an instance from {@link Connection#getAdmin()} and<a name="line.65"></a>
+<span class="sourceLineNo">066</span> * call {@link #close()} when done.<a name="line.66"></a>
+<span class="sourceLineNo">067</span> * &lt;p&gt;Admin can be used to create, drop, list, enable and disable and otherwise modify tables,<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * as well as perform other administrative operations.<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *<a name="line.69"></a>
+<span class="sourceLineNo">070</span> * @see ConnectionFactory<a name="line.70"></a>
+<span class="sourceLineNo">071</span> * @see Connection<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * @see Table<a name="line.72"></a>
+<span class="sourceLineNo">073</span> * @since 0.99.0<a name="line.73"></a>
+<span class="sourceLineNo">074</span> */<a name="line.74"></a>
+<span class="sourceLineNo">075</span>@InterfaceAudience.Public<a name="line.75"></a>
+<span class="sourceLineNo">076</span>public interface Admin extends Abortable, Closeable {<a name="line.76"></a>
+<span class="sourceLineNo">077</span><a name="line.77"></a>
+<span class="sourceLineNo">078</span>  /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>   * Return the operation timeout for a rpc call.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>   * @see #getSyncWaitTimeout()<a name="line.80"></a>
+<span class="sourceLineNo">081</span>   */<a name="line.81"></a>
+<span class="sourceLineNo">082</span>  int getOperationTimeout();<a name="line.82"></a>
+<span class="sourceLineNo">083</span><a name="line.83"></a>
+<span class="sourceLineNo">084</span>  /**<a name="line.84"></a>
+<span class="sourceLineNo">085</span>   * Return the blocking wait time for an asynchronous operation. Can be configured by<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   * {@code hbase.client.sync.wait.timeout.msec}.<a name="line.86"></a>
+<span class="sourceLineNo">087</span>   * &lt;p/&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span>   * For several operations, such as createTable, deleteTable, etc, the rpc call will finish right<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   * after we schedule a procedure at master side, so the timeout will not be controlled by the<a name="line.89"></a>
+<span class="sourceLineNo">090</span>   * above {@link #getOperationTimeout()}. And timeout value here tells you how much time we will<a name="line.90"></a>
+<span class="sourceLineNo">091</span>   * wait until the procedure at master side is finished.<a name="line.91"></a>
+<span class="sourceLineNo">092</span>   * &lt;p/&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span>   * In general, you can consider that the implementation for XXXX method is just a<a name="line.93"></a>
+<span class="sourceLineNo">094</span>   * XXXXAsync().get(getSyncWaitTimeout(), TimeUnit.MILLISECONDS).<a name="line.94"></a>
+<span class="sourceLineNo">095</span>   * @see #getOperationTimeout()<a name="line.95"></a>
+<span class="sourceLineNo">096</span>   */<a name="line.96"></a>
+<span class="sourceLineNo">097</span>  int getSyncWaitTimeout();<a name="line.97"></a>
+<span class="sourceLineNo">098</span><a name="line.98"></a>
+<span class="sourceLineNo">099</span>  @Override<a name="line.99"></a>
+<span class="sourceLineNo">100</span>  void abort(String why, Throwable e);<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>  @Override<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  boolean isAborted();<a name="line.103"></a>
+<span class="sourceLineNo">104</span><a name="line.104"></a>
+<span class="sourceLineNo">105</span>  /**<a name="line.105"></a>
+<span class="sourceLineNo">106</span>   * @return Connection used by this object.<a name="line.106"></a>
+<span class="sourceLineNo">107</span>   */<a name="line.107"></a>
+<span class="sourceLineNo">108</span>  Connection getConnection();<a name="line.108"></a>
+<span class="sourceLineNo">109</span><a name="line.109"></a>
+<span class="sourceLineNo">110</span>  /**<a name="line.110"></a>
+<span class="sourceLineNo">111</span>   * @param tableName Table to check.<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   * @return &lt;code&gt;true&lt;/code&gt; if table exists already.<a name="line.112"></a>
+<span class="sourceLineNo">113</span>   * @throws IOException<a name="line.113"></a>
+<span class="sourceLineNo">114</span>   */<a name="line.114"></a>
+<span class="sourceLineNo">115</span>  boolean tableExists(TableName tableName) throws IOException;<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>  /**<a name="line.117"></a>
+<span class="sourceLineNo">118</span>   * List all the userspace tables.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>   *<a name="line.119"></a>
+<span class="sourceLineNo">120</span>   * @return a list of TableDescriptors<a name="line.120"></a>
+<span class="sourceLineNo">121</span>   * @throws IOException if a remote or network exception occurs<a name="line.121"></a>
+<span class="sourceLineNo">122</span>   */<a name="line.122"></a>
+<span class="sourceLineNo">123</span>  List&lt;TableDescriptor&gt; listTableDescriptors() throws IOException;<a name="line.123"></a>
+<span class="sourceLineNo">124</span><a name="line.124"></a>
+<span class="sourceLineNo">125</span>  /**<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   * List all the userspace tables that match the given pattern.<a name="line.126"></a>
+<span class="sourceLineNo">127</span>   *<a name="line.127"></a>
+<span class="sourceLineNo">128</span>   * @param pattern The compiled regular expression to match against<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   * @return a list of TableDescriptors<a name="line.129"></a>
+<span class="sourceLineNo">130</span>   * @throws IOException if a remote or network exception occurs<a name="line.130"></a>
+<span class="sourceLineNo">131</span>   * @see #listTableDescriptors()<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   */<a name="line.132"></a>
+<span class="sourceLineNo">133</span>  default List&lt;TableDescriptor&gt; listTableDescriptors(Pattern pattern) throws IOException {<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    return listTableDescriptors(pattern, false);<a name="line.134"></a>
+<span class="sourceLineNo">135</span>  }<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>  /**<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   * List all the tables matching the given pattern.<a name="line.138"></a>
+<span class="sourceLineNo">139</span>   *<a name="line.139"></a>
+<span class="sourceLineNo">140</span>   * @param pattern The compiled regular expression to match against<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   * @param includeSysTables &lt;code&gt;false&lt;/code&gt; to match only against userspace tables<a name="line.141"></a>
+<span class="sourceLineNo">142</span>   * @return a list of TableDescriptors<a name="line.142"></a>
+<span class="sourceLineNo">143</span>   * @throws IOException if a remote or network exception occurs<a name="line.143"></a>
+<span class="sourceLineNo">144</span>   * @see #listTableDescriptors()<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   */<a name="line.145"></a>
+<span class="sourceLineNo">146</span>  List&lt;TableDescriptor&gt; listTableDescriptors(Pattern pattern, boolean includeSysTables)<a name="line.146"></a>
+<span class="sourceLineNo">147</span>      throws IOException;<a name="line.147"></a>
+<span class="sourceLineNo">148</span><a name="line.148"></a>
+<span class="sourceLineNo">149</span>  /**<a name="line.149"></a>
+<span class="sourceLineNo">150</span>   * List all of the names of userspace tables.<a name="line.150"></a>
+<span class="sourceLineNo">151</span>   *<a name="line.151"></a>
+<span class="sourceLineNo">152</span>   * @return TableName[] table names<a name="line.152"></a>
+<span class="sourceLineNo">153</span>   * @throws IOException if a remote or network exception occurs<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   */<a name="line.154"></a>
+<span class="sourceLineNo">155</span>  TableName[] listTableNames() throws IOException;<a name="line.155"></a>
+<span class="sourceLineNo">156</span><a name="line.156"></a>
+<span class="sourceLineNo">157</span>  /**<a name="line.157"></a>
+<span class="sourceLineNo">158</span>   * List all of the names of userspace tables.<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   * @param pattern The regular expression to match against<a name="line.159"></a>
+<span class="sourceLineNo">160</span>   * @return array of table names<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   * @throws IOException if a remote or network exception occurs<a name="line.161"></a>
+<span class="sourceLineNo">162</span>   */<a name="line.162"></a>
+<span class="sourceLineNo">163</span>  default TableName[] listTableNames(Pattern pattern) throws IOException {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    return listTableNames(pattern, false);<a name="line.164"></a>
+<span class="sourceLineNo">165</span>  }<a name="line.165"></a>
+<span class="sourceLineNo">166</span><a name="line.166"></a>
+<span class="sourceLineNo">167</span>  /**<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   * List all of the names of userspace tables.<a name="line.168"></a>
+<span class="sourceLineNo">169</span>   * @param pattern The regular expression to match against<a name="line.169"></a>
+<span class="sourceLineNo">170</span>   * @param includeSysTables &lt;code&gt;false&lt;/code&gt; to match only against userspace tables<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   * @return TableName[] table names<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   * @throws IOException if a remote or network exception occurs<a name="line.172"></a>
+<span class="sourceLineNo">173</span>   */<a name="line.173"></a>
+<span class="sourceLineNo">174</span>  TableName[] listTableNames(Pattern pattern, boolean includeSysTables)<a name="line.174"></a>
+<span class="sourceLineNo">175</span>      throws IOException;<a name="line.175"></a>
+<span class="sourceLineNo">176</span><a name="line.176"></a>
+<span class="sourceLineNo">177</span>  /**<a name="line.177"></a>
+<span class="sourceLineNo">178</span>   * Get a table descriptor.<a name="line.178"></a>
+<span class="sourceLineNo">179</span>   *<a name="line.179"></a>
+<span class="sourceLineNo">180</span>   * @param tableName as a {@link TableName}<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   * @return the tableDescriptor<a name="line.181"></a>
+<span class="sourceLineNo">182</span>   * @throws org.apache.hadoop.hbase.TableNotFoundException<a name="line.182"></a>
+<span class="sourceLineNo">183</span>   * @throws IOException if a remote or network exception occurs<a name="line.183"></a>
+<span class="sourceLineNo">184</span>   */<a name="line.184"></a>
+<span class="sourceLineNo">185</span>  TableDescriptor getDescriptor(TableName tableName)<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      throws TableNotFoundException, IOException;<a name="line.186"></a>
+<span class="sourceLineNo">187</span><a name="line.187"></a>
+<span class="sourceLineNo">188</span>  /**<a name="line.188"></a>
+<span class="sourceLineNo">189</span>   * Creates a new table. Synchronous operation.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>   *<a name="line.190"></a>
+<span class="sourceLineNo">191</span>   * @param desc table descriptor for table<a name="line.191"></a>
+<span class="sourceLineNo">192</span>   * @throws IllegalArgumentException if the table name is reserved<a name="line.192"></a>
+<span class="sourceLineNo">193</span>   * @throws org.apache.hadoop.hbase.MasterNotRunningException if master is not running<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   * @throws org.apache.hadoop.hbase.TableExistsException if table already exists (If concurrent<a name="line.194"></a>
+<span class="sourceLineNo">195</span>   * threads, the table may have been created between test-for-existence and attempt-at-creation).<a name="line.195"></a>
+<span class="sourceLineNo">196</span>   * @throws IOException if a remote or network exception occurs<a name="line.196"></a>
+<span class="sourceLineNo">197</span>   */<a name="line.197"></a>
+<span class="sourceLineNo">198</span>  void createTable(TableDescriptor desc) throws IOException;<a name="line.198"></a>
+<span class="sourceLineNo">199</span><a name="line.199"></a>
+<span class="sourceLineNo">200</span>  /**<a name="line.200"></a>
+<span class="sourceLineNo">201</span>   * Creates a new table with the specified number of regions.  The start key specified will become<a name="line.201"></a>
+<span class="sourceLineNo">202</span>   * the end key of the first region of the table, and the end key specified will become the start<a name="line.202"></a>
+<span class="sourceLineNo">203</span>   * key of the last region of the table (the first region has a null start key and the last region<a name="line.203"></a>
+<span class="sourceLineNo">204</span>   * has a null end key). BigInteger math will be used to divide the key range specified into enough<a name="line.204"></a>
+<span class="sourceLineNo">205</span>   * segments to make the required number of total regions. Synchronous operation.<a name="line.205"></a>
+<span class="sourceLineNo">206</span>   *<a name="line.206"></a>
+<span class="sourceLineNo">207</span>   * @param desc table descriptor for table<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   * @param startKey beginning of key range<a name="line.208"></a>
+<span class="sourceLineNo">209</span>   * @param endKey end of key range<a name="line.209"></a>
+<span class="sourceLineNo">210</span>   * @param numRegions the total number of regions to create<a name="line.210"></a>
+<span class="sourceLineNo">211</span>   * @throws IllegalArgumentException if the table name is reserved<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   * @throws org.apache.hadoop.hbase.MasterNotRunningException if master is not running<a name="line.212"></a>
+<span class="sourceLineNo">213</span>   * @throws org.apache.hadoop.hbase.TableExistsException if table already exists (If concurrent<a name="line.213"></a>
+<span class="sourceLineNo">214</span>   * threads, the table may have been created between test-for-existence and attempt-at-creation).<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   * @throws IOException<a name="line.215"></a>
+<span class="sourceLineNo">216</span>   */<a name="line.216"></a>
+<span class="sourceLineNo">217</span>  void createTable(TableDescriptor desc, byte[] startKey, byte[] endKey, int numRegions)<a name="line.217"></a>
+<span class="sourceLineNo">218</span>      throws IOException;<a name="line.218"></a>
+<span class="sourceLineNo">219</span><a name="line.219"></a>
+<span class="sourceLineNo">220</span>  /**<a name="line.220"></a>
+<span class="sourceLineNo">221</span>   * Creates a new table with an initial set of empty regions defined by the specified split keys.<a name="line.221"></a>
+<span class="sourceLineNo">222</span>   * The total number of regions created will be the number of split keys plus one. Synchronous<a name="line.222"></a>
+<span class="sourceLineNo">223</span>   * operation. Note : Avoid passing empty split key.<a name="line.223"></a>
+<span class="sourceLineNo">224</span>   *<a name="line.224"></a>
+<span class="sourceLineNo">225</span>   * @param desc table descriptor for table<a name="line.225"></a>
+<span class="sourceLineNo">226</span>   * @param splitKeys array of split keys for the initial regions of the table<a name="line.226"></a>
+<span class="sourceLineNo">227</span>   * @throws IllegalArgumentException if the table name is reserved, if the split keys are repeated<a name="line.227"></a>
+<span class="sourceLineNo">228</span>   * and if the split key has empty byte array.<a name="line.228"></a>
+<span class="sourceLineNo">229</span>   * @throws org.apache.hadoop.hbase.MasterNotRunningException if master is not running<a name="line.229"></a>
+<span class="sourceLineNo">230</span>   * @throws org.apache.hadoop.hbase.TableExistsException if table already exists (If concurrent<a name="line.230"></a>
+<span class="sourceLineNo">231</span>   * threads, the table may have been created between test-for-existence and attempt-at-creation).<a name="line.231"></a>
+<span class="sourceLineNo">232</span>   * @throws IOException<a name="line.232"></a>
+<span class="sourceLineNo">233</span>   */<a name="line.233"></a>
+<span class="sourceLineNo">234</span>  default void createTable(TableDescriptor desc, byte[][] splitKeys) throws IOException {<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    get(createTableAsync(desc, splitKeys), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  /**<a name="line.238"></a>
+<span class="sourceLineNo">239</span>   * Creates a new table but does not block and wait for it to come online.<a name="line.239"></a>
+<span class="sourceLineNo">240</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.240"></a>
+<span class="sourceLineNo">241</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.241"></a>
+<span class="sourceLineNo">242</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.242"></a>
+<span class="sourceLineNo">243</span>   * operation to complete.<a name="line.243"></a>
+<span class="sourceLineNo">244</span>   * Throws IllegalArgumentException Bad table name, if the split keys<a name="line.244"></a>
+<span class="sourceLineNo">245</span>   *    are repeated and if the split key has empty byte array.<a name="line.245"></a>
+<span class="sourceLineNo">246</span>   *<a name="line.246"></a>
+<span class="sourceLineNo">247</span>   * @param desc table descriptor for table<a name="line.247"></a>
+<span class="sourceLineNo">248</span>   * @param splitKeys keys to check if the table has been created with all split keys<a name="line.248"></a>
+<span class="sourceLineNo">249</span>   * @throws IOException if a remote or network exception occurs<a name="line.249"></a>
+<span class="sourceLineNo">250</span>   * @return the result of the async creation. You can use Future.get(long, TimeUnit)<a name="line.250"></a>
+<span class="sourceLineNo">251</span>   *    to wait on the operation to complete.<a name="line.251"></a>
+<span class="sourceLineNo">252</span>   */<a name="line.252"></a>
+<span class="sourceLineNo">253</span>  Future&lt;Void&gt; createTableAsync(TableDescriptor desc, byte[][] splitKeys)<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      throws IOException;<a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>  /**<a name="line.256"></a>
+<span class="sourceLineNo">257</span>   * Deletes a table. Synchronous operation.<a name="line.257"></a>
+<span class="sourceLineNo">258</span>   * @param tableName name of table to delete<a name="line.258"></a>
+<span class="sourceLineNo">259</span>   * @throws IOException if a remote or network exception occurs<a name="line.259"></a>
+<span class="sourceLineNo">260</span>   */<a name="line.260"></a>
+<span class="sourceLineNo">261</span>  default void deleteTable(TableName tableName) throws IOException {<a name="line.261"></a>
+<span class="sourceLineNo">262</span>    get(deleteTableAsync(tableName), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>  }<a name="line.263"></a>
+<span class="sourceLineNo">264</span><a name="line.264"></a>
+<span class="sourceLineNo">265</span>  /**<a name="line.265"></a>
+<span class="sourceLineNo">266</span>   * Deletes the table but does not block and wait for it to be completely removed.<a name="line.266"></a>
+<span class="sourceLineNo">267</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.267"></a>
+<span class="sourceLineNo">268</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.268"></a>
+<span class="sourceLineNo">269</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.269"></a>
+<span class="sourceLineNo">270</span>   * operation to complete.<a name="line.270"></a>
+<span class="sourceLineNo">271</span>   *<a name="line.271"></a>
+<span class="sourceLineNo">272</span>   * @param tableName name of table to delete<a name="line.272"></a>
+<span class="sourceLineNo">273</span>   * @throws IOException if a remote or network exception occurs<a name="line.273"></a>
+<span class="sourceLineNo">274</span>   * @return the result of the async delete. You can use Future.get(long, TimeUnit)<a name="line.274"></a>
+<span class="sourceLineNo">275</span>   *    to wait on the operation to complete.<a name="line.275"></a>
+<span class="sourceLineNo">276</span>   */<a name="line.276"></a>
+<span class="sourceLineNo">277</span>  Future&lt;Void&gt; deleteTableAsync(TableName tableName) throws IOException;<a name="line.277"></a>
+<span class="sourceLineNo">278</span><a name="line.278"></a>
+<span class="sourceLineNo">279</span>  /**<a name="line.279"></a>
+<span class="sourceLineNo">280</span>   * Truncate a table. Synchronous operation.<a name="line.280"></a>
+<span class="sourceLineNo">281</span>   * @param tableName name of table to truncate<a name="line.281"></a>
+<span class="sourceLineNo">282</span>   * @param preserveSplits &lt;code&gt;true&lt;/code&gt; if the splits should be preserved<a name="line.282"></a>
+<span class="sourceLineNo">283</span>   * @throws IOException if a remote or network exception occurs<a name="line.283"></a>
+<span class="sourceLineNo">284</span>   */<a name="line.284"></a>
+<span class="sourceLineNo">285</span>  default void truncateTable(TableName tableName, boolean preserveSplits) throws IOException {<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    get(truncateTableAsync(tableName, preserveSplits), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.286"></a>
+<span class="sourceLineNo">287</span>  }<a name="line.287"></a>
+<span class="sourceLineNo">288</span><a name="line.288"></a>
+<span class="sourceLineNo">289</span>  /**<a name="line.289"></a>
+<span class="sourceLineNo">290</span>   * Truncate the table but does not block and wait for it to be completely enabled. You can use<a name="line.290"></a>
+<span class="sourceLineNo">291</span>   * Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.291"></a>
+<span class="sourceLineNo">292</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.292"></a>
+<span class="sourceLineNo">293</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.293"></a>
+<span class="sourceLineNo">294</span>   * @param tableName name of table to delete<a name="line.294"></a>
+<span class="sourceLineNo">295</span>   * @param preserveSplits &lt;code&gt;true&lt;/code&gt; if the splits should be preserved<a name="line.295"></a>
+<span class="sourceLineNo">296</span>   * @throws IOException if a remote or network exception occurs<a name="line.296"></a>
+<span class="sourceLineNo">297</span>   * @return the result of the async truncate. You can use Future.get(long, TimeUnit) to wait on the<a name="line.297"></a>
+<span class="sourceLineNo">298</span>   *         operation to complete.<a name="line.298"></a>
+<span class="sourceLineNo">299</span>   */<a name="line.299"></a>
+<span class="sourceLineNo">300</span>  Future&lt;Void&gt; truncateTableAsync(TableName tableName, boolean preserveSplits)<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      throws IOException;<a name="line.301"></a>
+<span class="sourceLineNo">302</span><a name="line.302"></a>
+<span class="sourceLineNo">303</span>  /**<a name="line.303"></a>
+<span class="sourceLineNo">304</span>   * Enable a table. May timeout. Use {@link #enableTableAsync(org.apache.hadoop.hbase.TableName)}<a name="line.304"></a>
+<span class="sourceLineNo">305</span>   * and {@link #isTableEnabled(org.apache.hadoop.hbase.TableName)} instead. The table has to be in<a name="line.305"></a>
+<span class="sourceLineNo">306</span>   * disabled state for it to be enabled.<a name="line.306"></a>
+<span class="sourceLineNo">307</span>   * @param tableName name of the table<a name="line.307"></a>
+<span class="sourceLineNo">308</span>   * @throws IOException if a remote or network exception occurs There could be couple types of<a name="line.308"></a>
+<span class="sourceLineNo">309</span>   *           IOException TableNotFoundException means the table doesn't exist.<a name="line.309"></a>
+<span class="sourceLineNo">310</span>   *           TableNotDisabledException means the table isn't in disabled state.<a name="line.310"></a>
+<span class="sourceLineNo">311</span>   * @see #isTableEnabled(org.apache.hadoop.hbase.TableName)<a name="line.311"></a>
+<span class="sourceLineNo">312</span>   * @see #disableTable(org.apache.hadoop.hbase.TableName)<a name="line.312"></a>
+<span class="sourceLineNo">313</span>   * @see #enableTableAsync(org.apache.hadoop.hbase.TableName)<a name="line.313"></a>
+<span class="sourceLineNo">314</span>   */<a name="line.314"></a>
+<span class="sourceLineNo">315</span>  default void enableTable(TableName tableName) throws IOException {<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    get(enableTableAsync(tableName), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.316"></a>
+<span class="sourceLineNo">317</span>  }<a name="line.317"></a>
+<span class="sourceLineNo">318</span><a name="line.318"></a>
+<span class="sourceLineNo">319</span>  /**<a name="line.319"></a>
+<span class="sourceLineNo">320</span>   * Enable the table but does not block and wait for it to be completely enabled.<a name="line.320"></a>
+<span class="sourceLineNo">321</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.321"></a>
+<span class="sourceLineNo">322</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.322"></a>
+<span class="sourceLineNo">323</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.323"></a>
+<span class="sourceLineNo">324</span>   * operation to complete.<a name="line.324"></a>
+<span class="sourceLineNo">325</span>   *<a name="line.325"></a>
+<span class="sourceLineNo">326</span>   * @param tableName name of table to delete<a name="line.326"></a>
+<span class="sourceLineNo">327</span>   * @throws IOException if a remote or network exception occurs<a name="line.327"></a>
+<span class="sourceLineNo">328</span>   * @return the result of the async enable. You can use Future.get(long, TimeUnit)<a name="line.328"></a>
+<span class="sourceLineNo">329</span>   *    to wait on the operation to complete.<a name="line.329"></a>
+<span class="sourceLineNo">330</span>   */<a name="line.330"></a>
+<span class="sourceLineNo">331</span>  Future&lt;Void&gt; enableTableAsync(TableName tableName) throws IOException;<a name="line.331"></a>
+<span class="sourceLineNo">332</span><a name="line.332"></a>
+<span class="sourceLineNo">333</span>  /**<a name="line.333"></a>
+<span class="sourceLineNo">334</span>   * Disable the table but does not block and wait for it to be completely disabled.<a name="line.334"></a>
+<span class="sourceLineNo">335</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.335"></a>
+<span class="sourceLineNo">336</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.336"></a>
+<span class="sourceLineNo">337</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.337"></a>
+<span class="sourceLineNo">338</span>   * operation to complete.<a name="line.338"></a>
+<span class="sourceLineNo">339</span>   *<a name="line.339"></a>
+<span class="sourceLineNo">340</span>   * @param tableName name of table to delete<a name="line.340"></a>
+<span class="sourceLineNo">341</span>   * @throws IOException if a remote or network exception occurs<a name="line.341"></a>
+<span class="sourceLineNo">342</span>   * @return the result of the async disable. You can use Future.get(long, TimeUnit)<a name="line.342"></a>
+<span class="sourceLineNo">343</span>   *    to wait on the operation to complete.<a name="line.343"></a>
+<span class="sourceLineNo">344</span>   */<a name="line.344"></a>
+<span class="sourceLineNo">345</span>  Future&lt;Void&gt; disableTableAsync(TableName tableName) throws IOException;<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>  /**<a name="line.347"></a>
+<span class="sourceLineNo">348</span>   * Disable table and wait on completion. May timeout eventually. Use<a name="line.348"></a>
+<span class="sourceLineNo">349</span>   * {@link #disableTableAsync(org.apache.hadoop.hbase.TableName)} and<a name="line.349"></a>
+<span class="sourceLineNo">350</span>   * {@link #isTableDisabled(org.apache.hadoop.hbase.TableName)} instead. The table has to be in<a name="line.350"></a>
+<span class="sourceLineNo">351</span>   * enabled state for it to be disabled.<a name="line.351"></a>
+<span class="sourceLineNo">352</span>   * @param tableName<a name="line.352"></a>
+<span class="sourceLineNo">353</span>   * @throws IOException There could be couple types of IOException TableNotFoundException means the<a name="line.353"></a>
+<span class="sourceLineNo">354</span>   *           table doesn't exist. TableNotEnabledException means the table isn't in enabled state.<a name="line.354"></a>
+<span class="sourceLineNo">355</span>   */<a name="line.355"></a>
+<span class="sourceLineNo">356</span>  default void disableTable(TableName tableName) throws IOException {<a name="line.356"></a>
+<span class="sourceLineNo">357</span>    get(disableTableAsync(tableName), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.357"></a>
+<span class="sourceLineNo">358</span>  }<a name="line.358"></a>
+<span class="sourceLineNo">359</span><a name="line.359"></a>
+<span class="sourceLineNo">360</span>  /**<a name="line.360"></a>
+<span class="sourceLineNo">361</span>   * @param tableName name of table to check<a name="line.361"></a>
+<span class="sourceLineNo">362</span>   * @return &lt;code&gt;true&lt;/code&gt; if table is on-line<a name="line.362"></a>
+<span class="sourceLineNo">363</span>   * @throws IOException if a remote or network exception occurs<a name="line.363"></a>
+<span class="sourceLineNo">364</span>   */<a name="line.364"></a>
+<span class="sourceLineNo">365</span>  boolean isTableEnabled(TableName tableName) throws IOException;<a name="line.365"></a>
+<span class="sourceLineNo">366</span><a name="line.366"></a>
+<span class="sourceLineNo">367</span>  /**<a name="line.367"></a>
+<span class="sourceLineNo">368</span>   * @param tableName name of table to check<a name="line.368"></a>
+<span class="sourceLineNo">369</span>   * @return &lt;code&gt;true&lt;/code&gt; if table is off-line<a name="line.369"></a>
+<span class="sourceLineNo">370</span>   * @throws IOException if a remote or network exception occurs<a name="line.370"></a>
+<span class="sourceLineNo">371</span>   */<a name="line.371"></a>
+<span class="sourceLineNo">372</span>  boolean isTableDisabled(TableName tableName) throws IOException;<a name="line.372"></a>
+<span class="sourceLineNo">373</span><a name="line.373"></a>
+<span class="sourceLineNo">374</span>  /**<a name="line.374"></a>
+<span class="sourceLineNo">375</span>   * @param tableName name of table to check<a name="line.375"></a>
+<span class="sourceLineNo">376</span>   * @return &lt;code&gt;true&lt;/code&gt; if all regions of the table are available<a name="line.376"></a>
+<span class="sourceLineNo">377</span>   * @throws IOException if a remote or network exception occurs<a name="line.377"></a>
+<span class="sourceLineNo">378</span>   */<a name="line.378"></a>
+<span class="sourceLineNo">379</span>  boolean isTableAvailable(TableName tableName) throws IOException;<a name="line.379"></a>
+<span class="sourceLineNo">380</span><a name="line.380"></a>
+<span class="sourceLineNo">381</span>  /**<a name="line.381"></a>
+<span class="sourceLineNo">382</span>   * Add a column family to an existing table. Synchronous operation. Use<a name="line.382"></a>
+<span class="sourceLineNo">383</span>   * {@link #addColumnFamilyAsync(TableName, ColumnFamilyDescriptor)} instead because it returns a<a name="line.383"></a>
+<span class="sourceLineNo">384</span>   * {@link Future} from which you can learn whether success or failure.<a name="line.384"></a>
+<span class="sourceLineNo">385</span>   * @param tableName name of the table to add column family to<a name="line.385"></a>
+<span class="sourceLineNo">386</span>   * @param columnFamily column family descriptor of column family to be added<a name="line.386"></a>
+<span class="sourceLineNo">387</span>   * @throws IOException if a remote or network exception occurs<a name="line.387"></a>
+<span class="sourceLineNo">388</span>   */<a name="line.388"></a>
+<span class="sourceLineNo">389</span>  default void addColumnFamily(TableName tableName, ColumnFamilyDescriptor columnFamily)<a name="line.389"></a>
+<span class="sourceLineNo">390</span>      throws IOException {<a name="line.390"></a>
+<span class="sourceLineNo">391</span>    get(addColumnFamilyAsync(tableName, columnFamily), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.391"></a>
+<span class="sourceLineNo">392</span>  }<a name="line.392"></a>
+<span class="sourceLineNo">393</span><a name="line.393"></a>
+<span class="sourceLineNo">394</span>  /**<a name="line.394"></a>
+<span class="sourceLineNo">395</span>   * Add a column family to an existing table. Asynchronous operation.<a name="line.395"></a>
+<span class="sourceLineNo">396</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.396"></a>
+<span class="sourceLineNo">397</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.397"></a>
+<span class="sourceLineNo">398</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.398"></a>
+<span class="sourceLineNo">399</span>   * operation to complete.<a name="line.399"></a>
+<span class="sourceLineNo">400</span>   *<a name="line.400"></a>
+<span class="sourceLineNo">401</span>   * @param tableName name of the table to add column family to<a name="line.401"></a>
+<span class="sourceLineNo">402</span>   * @param columnFamily column family descriptor of column family to be added<a name="line.402"></a>
+<span class="sourceLineNo">403</span>   * @throws IOException if a remote or network exception occurs<a name="line.403"></a>
+<span class="sourceLineNo">404</span>   * @return the result of the async add column family. You can use Future.get(long, TimeUnit) to<a name="line.404"></a>
+<span class="sourceLineNo">405</span>   *         wait on the operation to complete.<a name="line.405"></a>
+<span class="sourceLineNo">406</span>   */<a name="line.406"></a>
+<span class="sourceLineNo">407</span>  Future&lt;Void&gt; addColumnFamilyAsync(TableName tableName, ColumnFamilyDescriptor columnFamily)<a name="line.407"></a>
+<span class="sourceLineNo">408</span>      throws IOException;<a name="line.408"></a>
+<span class="sourceLineNo">409</span><a name="line.409"></a>
+<span class="sourceLineNo">410</span>  /**<a name="line.410"></a>
+<span class="sourceLineNo">411</span>   * Delete a column family from a table. Synchronous operation. Use<a name="line.411"></a>
+<span class="sourceLineNo">412</span>   * {@link #deleteColumnFamily(TableName, byte[])} instead because it returns a {@link Future} from<a name="line.412"></a>
+<span class="sourceLineNo">413</span>   * which you can learn whether success or failure.<a name="line.413"></a>
+<span class="sourceLineNo">414</span>   * @param tableName name of table<a name="line.414"></a>
+<span class="sourceLineNo">415</span>   * @param columnFamily name of column family to be deleted<a name="line.415"></a>
+<span class="sourceLineNo">416</span>   * @throws IOException if a remote or network exception occurs<a name="line.416"></a>
+<span class="sourceLineNo">417</span>   */<a name="line.417"></a>
+<span class="sourceLineNo">418</span>  default void deleteColumnFamily(TableName tableName, byte[] columnFamily) throws IOException {<a name="line.418"></a>
+<span class="sourceLineNo">419</span>    get(deleteColumnFamilyAsync(tableName, columnFamily), getSyncWaitTimeout(),<a name="line.419"></a>
+<span class="sourceLineNo">420</span>      TimeUnit.MILLISECONDS);<a name="line.420"></a>
+<span class="sourceLineNo">421</span>  }<a name="line.421"></a>
+<span class="sourceLineNo">422</span><a name="line.422"></a>
+<span class="sourceLineNo">423</span>  /**<a name="line.423"></a>
+<span class="sourceLineNo">424</span>   * Delete a column family from a table. Asynchronous operation.<a name="line.424"></a>
+<span class="sourceLineNo">425</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.425"></a>
+<span class="sourceLineNo">426</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.426"></a>
+<span class="sourceLineNo">427</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.427"></a>
+<span class="sourceLineNo">428</span>   * operation to complete.<a name="line.428"></a>
+<span class="sourceLineNo">429</span>   *<a name="line.429"></a>
+<span class="sourceLineNo">430</span>   * @param tableName name of table<a name="line.430"></a>
+<span class="sourceLineNo">431</span>   * @param columnFamily name of column family to be deleted<a name="line.431"></a>
+<span class="sourceLineNo">432</span>   * @throws IOException if a remote or network exception occurs<a name="line.432"></a>
+<span class="sourceLineNo">433</span>   * @return the result of the async delete column family. You can use Future.get(long, TimeUnit) to<a name="line.433"></a>
+<span class="sourceLineNo">434</span>   *         wait on the operation to complete.<a name="line.434"></a>
+<span class="sourceLineNo">435</span>   */<a name="line.435"></a>
+<span class="sourceLineNo">436</span>  Future&lt;Void&gt; deleteColumnFamilyAsync(TableName tableName, byte[] columnFamily)<a name="line.436"></a>
+<span class="sourceLineNo">437</span>      throws IOException;<a name="line.437"></a>
+<span class="sourceLineNo">438</span><a name="line.438"></a>
+<span class="sourceLineNo">439</span>  /**<a name="line.439"></a>
+<span class="sourceLineNo">440</span>   * Modify an existing column family on a table. Synchronous operation. Use<a name="line.440"></a>
+<span class="sourceLineNo">441</span>   * {@link #modifyColumnFamilyAsync(TableName, ColumnFamilyDescriptor)} instead because it returns<a name="line.441"></a>
+<span class="sourceLineNo">442</span>   * a {@link Future} from which you can learn whether success or failure.<a name="line.442"></a>
+<span class="sourceLineNo">443</span>   * @param tableName name of table<a name="line.443"></a>
+<span class="sourceLineNo">444</span>   * @param columnFamily new column family descriptor to use<a name="line.444"></a>
+<span class="sourceLineNo">445</span>   * @throws IOException if a remote or network exception occurs<a name="line.445"></a>
+<span class="sourceLineNo">446</span>   */<a name="line.446"></a>
+<span class="sourceLineNo">447</span>  default void modifyColumnFamily(TableName tableName, ColumnFamilyDescriptor columnFamily)<a name="line.447"></a>
+<span class="sourceLineNo">448</span>      throws IOException {<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    get(modifyColumnFamilyAsync(tableName, columnFamily), getSyncWaitTimeout(),<a name="line.449"></a>
+<span class="sourceLineNo">450</span>      TimeUnit.MILLISECONDS);<a name="line.450"></a>
+<span class="sourceLineNo">451</span>  }<a name="line.451"></a>
+<span class="sourceLineNo">452</span><a name="line.452"></a>
+<span class="sourceLineNo">453</span>  /**<a name="line.453"></a>
+<span class="sourceLineNo">454</span>   * Modify an existing column family on a table. Asynchronous operation.<a name="line.454"></a>
+<span class="sourceLineNo">455</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.455"></a>
+<span class="sourceLineNo">456</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.456"></a>
+<span class="sourceLineNo">457</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.457"></a>
+<span class="sourceLineNo">458</span>   * operation to complete.<a name="line.458"></a>
+<span class="sourceLineNo">459</span>   *<a name="line.459"></a>
+<span class="sourceLineNo">460</span>   * @param tableName name of table<a name="line.460"></a>
+<span class="sourceLineNo">461</span>   * @param columnFamily new column family descriptor to use<a name="line.461"></a>
+<span class="sourceLineNo">462</span>   * @throws IOException if a remote or network exception occurs<a name="line.462"></a>
+<span class="sourceLineNo">463</span>   * @return the result of the async modify column family. You can use Future.get(long, TimeUnit) to<a name="line.463"></a>
+<span class="sourceLineNo">464</span>   *         wait on the operation to complete.<a name="line.464"></a>
+<span class="sourceLineNo">465</span>   */<a name="line.465"></a>
+<span class="sourceLineNo">466</span>  Future&lt;Void&gt; modifyColumnFamilyAsync(TableName tableName, ColumnFamilyDescriptor columnFamily)<a name="line.466"></a>
+<span class="sourceLineNo">467</span>      throws IOException;<a name="line.467"></a>
+<span class="sourceLineNo">468</span><a name="line.468"></a>
+<span class="sourceLineNo">469</span>  /**<a name="line.469"></a>
+<span class="sourceLineNo">470</span>   * Get all the online regions on a region server.<a name="line.470"></a>
+<span class="sourceLineNo">471</span>   *<a name="line.471"></a>
+<span class="sourceLineNo">472</span>   * @return List of {@link RegionInfo}<a name="line.472"></a>
+<span class="sourceLineNo">473</span>   * @throws java.io.IOException<a name="line.473"></a>
+<span class="sourceLineNo">474</span>   */<a name="line.474"></a>
+<span class="sourceLineNo">475</span>  List&lt;RegionInfo&gt; getRegions(ServerName serverName) throws IOException;<a name="line.475"></a>
+<span class="sourceLineNo">476</span><a name="line.476"></a>
+<span class="sourceLineNo">477</span>  /**<a name="line.477"></a>
+<span class="sourceLineNo">478</span>   * Flush a table. Synchronous operation.<a name="line.478"></a>
+<span class="sourceLineNo">479</span>   *<a name="line.479"></a>
+<span class="sourceLineNo">480</span>   * @param tableName table to flush<a name="line.480"></a>
+<span class="sourceLineNo">481</span>   * @throws IOException if a remote or network exception occurs<a name="line.481"></a>
+<span class="sourceLineNo">482</span>   */<a name="line.482"></a>
+<span class="sourceLineNo">483</span>  void flush(TableName tableName) throws IOException;<a name="line.483"></a>
+<span class="sourceLineNo">484</span><a name="line.484"></a>
+<span class="sourceLineNo">485</span>  /**<a name="line.485"></a>
+<span class="sourceLineNo">486</span>   * Flush an individual region. Synchronous operation.<a name="line.486"></a>
+<span class="sourceLineNo">487</span>   *<a name="line.487"></a>
+<span class="sourceLineNo">488</span>   * @param regionName region to flush<a name="line.488"></a>
+<span class="sourceLineNo">489</span>   * @throws IOException if a remote or network exception occurs<a name="line.489"></a>
+<span class="sourceLineNo">490</span>   */<a name="line.490"></a>
+<span class="sourceLineNo">491</span>  void flushRegion(byte[] regionName) throws IOException;<a name="line.491"></a>
+<span class="sourceLineNo">492</span><a name="line.492"></a>
+<span class="sourceLineNo">493</span>  /**<a name="line.493"></a>
+<span class="sourceLineNo">494</span>   * Flush all regions on the region server. Synchronous operation.<a name="line.494"></a>
+<span class="sourceLineNo">495</span>   * @param serverName the region server name to flush<a name="line.495"></a>
+<span class="sourceLineNo">496</span>   * @throws IOException if a remote or network exception occurs<a name="line.496"></a>
+<span class="sourceLineNo">497</span>   */<a name="line.497"></a>
+<span class="sourceLineNo">498</span>  void flushRegionServer(ServerName serverName) throws IOException;<a name="line.498"></a>
+<span class="sourceLineNo">499</span><a name="line.499"></a>
+<span class="sourceLineNo">500</span>  /**<a name="line.500"></a>
+<span class="sourceLineNo">501</span>   * Compact a table. Asynchronous operation in that this method requests that a<a name="line.501"></a>
+<span class="sourceLineNo">502</span>   * Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.502"></a>
+<span class="sourceLineNo">503</span>   * (it can take a while).<a name="line.503"></a>
+<span class="sourceLineNo">504</span>   *<a name="line.504"></a>
+<span class="sourceLineNo">505</span>   * @param tableName table to compact<a name="line.505"></a>
+<span class="sourceLineNo">506</span>   * @throws IOException if a remote or network exception occurs<a name="line.506"></a>
+<span class="sourceLineNo">507</span>   */<a name="line.507"></a>
+<span class="sourceLineNo">508</span>  void compact(TableName tableName) throws IOException;<a name="line.508"></a>
+<span class="sourceLineNo">509</span><a name="line.509"></a>
+<span class="sourceLineNo">510</span>  /**<a name="line.510"></a>
+<span class="sourceLineNo">511</span>   * Compact an individual region. Asynchronous operation in that this method requests that a<a name="line.511"></a>
+<span class="sourceLineNo">512</span>   * Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.512"></a>
+<span class="sourceLineNo">513</span>   * (it can take a while).<a name="line.513"></a>
+<span class="sourceLineNo">514</span>   *<a name="line.514"></a>
+<span class="sourceLineNo">515</span>   * @param regionName region to compact<a name="line.515"></a>
+<span class="sourceLineNo">516</span>   * @throws IOException if a remote or network exception occurs<a name="line.516"></a>
+<span class="sourceLineNo">517</span>   */<a name="line.517"></a>
+<span class="sourceLineNo">518</span>  void compactRegion(byte[] regionName) throws IOException;<a name="line.518"></a>
+<span class="sourceLineNo">519</span><a name="line.519"></a>
+<span class="sourceLineNo">520</span>  /**<a name="line.520"></a>
+<span class="sourceLineNo">521</span>   * Compact a column family within a table. Asynchronous operation in that this method requests<a name="line.521"></a>
+<span class="sourceLineNo">522</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.522"></a>
+<span class="sourceLineNo">523</span>   * (it can take a while).<a name="line.523"></a>
+<span class="sourceLineNo">524</span>   *<a name="line.524"></a>
+<span class="sourceLineNo">525</span>   * @param tableName table to compact<a name="line.525"></a>
+<span class="sourceLineNo">526</span>   * @param columnFamily column family within a table<a name="line.526"></a>
+<span class="sourceLineNo">527</span>   * @throws IOException if a remote or network exception occurs<a name="line.527"></a>
+<span class="sourceLineNo">528</span>   */<a name="line.528"></a>
+<span class="sourceLineNo">529</span>  void compact(TableName tableName, byte[] columnFamily)<a name="line.529"></a>
+<span class="sourceLineNo">530</span>    throws IOException;<a name="line.530"></a>
+<span class="sourceLineNo">531</span><a name="line.531"></a>
+<span class="sourceLineNo">532</span>  /**<a name="line.532"></a>
+<span class="sourceLineNo">533</span>   * Compact a column family within a region. Asynchronous operation in that this method requests<a name="line.533"></a>
+<span class="sourceLineNo">534</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.534"></a>
+<span class="sourceLineNo">535</span>   * (it can take a while).<a name="line.535"></a>
+<span class="sourceLineNo">536</span>   *<a name="line.536"></a>
+<span class="sourceLineNo">537</span>   * @param regionName region to compact<a name="line.537"></a>
+<span class="sourceLineNo">538</span>   * @param columnFamily column family within a region<a name="line.538"></a>
+<span class="sourceLineNo">539</span>   * @throws IOException if a remote or network exception occurs<a name="line.539"></a>
+<span class="sourceLineNo">540</span>   */<a name="line.540"></a>
+<span class="sourceLineNo">541</span>  void compactRegion(byte[] regionName, byte[] columnFamily)<a name="line.541"></a>
+<span class="sourceLineNo">542</span>    throws IOException;<a name="line.542"></a>
+<span class="sourceLineNo">543</span><a name="line.543"></a>
+<span class="sourceLineNo">544</span>  /**<a name="line.544"></a>
+<span class="sourceLineNo">545</span>   * Compact a table.  Asynchronous operation in that this method requests that a<a name="line.545"></a>
+<span class="sourceLineNo">546</span>   * Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.546"></a>
+<span class="sourceLineNo">547</span>   * (it can take a while).<a name="line.547"></a>
+<span class="sourceLineNo">548</span>   *<a name="line.548"></a>
+<span class="sourceLineNo">549</span>   * @param tableName table to compact<a name="line.549"></a>
+<span class="sourceLineNo">550</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.550"></a>
+<span class="sourceLineNo">551</span>   * @throws IOException if a remote or network exception occurs<a name="line.551"></a>
+<span class="sourceLineNo">552</span>   * @throws InterruptedException<a name="line.552"></a>
+<span class="sourceLineNo">553</span>   */<a name="line.553"></a>
+<span class="sourceLineNo">554</span>  void compact(TableName tableName, CompactType compactType)<a name="line.554"></a>
+<span class="sourceLineNo">555</span>    throws IOException, InterruptedException;<a name="line.555"></a>
+<span class="sourceLineNo">556</span><a name="line.556"></a>
+<span class="sourceLineNo">557</span>  /**<a name="line.557"></a>
+<span class="sourceLineNo">558</span>   * Compact a column family within a table.  Asynchronous operation in that this method<a name="line.558"></a>
+<span class="sourceLineNo">559</span>   * requests that a Compaction run and then it returns. It does not wait on the<a name="line.559"></a>
+<span class="sourceLineNo">560</span>   * completion of Compaction (it can take a while).<a name="line.560"></a>
+<span class="sourceLineNo">561</span>   *<a name="line.561"></a>
+<span class="sourceLineNo">562</span>   * @param tableName table to compact<a name="line.562"></a>
+<span class="sourceLineNo">563</span>   * @param columnFamily column family within a table<a name="line.563"></a>
+<span class="sourceLineNo">564</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.564"></a>
+<span class="sourceLineNo">565</span>   * @throws IOException if not a mob column family or if a remote or network exception occurs<a name="line.565"></a>
+<span class="sourceLineNo">566</span>   * @throws InterruptedException<a name="line.566"></a>
+<span class="sourceLineNo">567</span>   */<a name="line.567"></a>
+<span class="sourceLineNo">568</span>  void compact(TableName tableName, byte[] columnFamily, CompactType compactType)<a name="line.568"></a>
+<span class="sourceLineNo">569</span>    throws IOException, InterruptedException;<a name="line.569"></a>
+<span class="sourceLineNo">570</span><a name="line.570"></a>
+<span class="sourceLineNo">571</span>  /**<a name="line.571"></a>
+<span class="sourceLineNo">572</span>   * Major compact a table. Asynchronous operation in that this method requests<a name="line.572"></a>
+<span class="sourceLineNo">573</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.573"></a>
+<span class="sourceLineNo">574</span>   * (it can take a while).<a name="line.574"></a>
+<span class="sourceLineNo">575</span>   *<a name="line.575"></a>
+<span class="sourceLineNo">576</span>   * @param tableName table to major compact<a name="line.576"></a>
+<span class="sourceLineNo">577</span>   * @throws IOException if a remote or network exception occurs<a name="line.577"></a>
+<span class="sourceLineNo">578</span>   */<a name="line.578"></a>
+<span class="sourceLineNo">579</span>  void majorCompact(TableName tableName) throws IOException;<a name="line.579"></a>
+<span class="sourceLineNo">580</span><a name="line.580"></a>
+<span class="sourceLineNo">581</span>  /**<a name="line.581"></a>
+<span class="sourceLineNo">582</span>   * Major compact a table or an individual region. Asynchronous operation in that this method requests<a name="line.582"></a>
+<span class="sourceLineNo">583</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.583"></a>
+<span class="sourceLineNo">584</span>   * (it can take a while).<a name="line.584"></a>
+<span class="sourceLineNo">585</span>   *<a name="line.585"></a>
+<span class="sourceLineNo">586</span>   * @param regionName region to major compact<a name="line.586"></a>
+<span class="sourceLineNo">587</span>   * @throws IOException if a remote or network exception occurs<a name="line.587"></a>
+<span class="sourceLineNo">588</span>   */<a name="line.588"></a>
+<span class="sourceLineNo">589</span>  void majorCompactRegion(byte[] regionName) throws IOException;<a name="line.589"></a>
+<span class="sourceLineNo">590</span><a name="line.590"></a>
+<span class="sourceLineNo">591</span>  /**<a name="line.591"></a>
+<span class="sourceLineNo">592</span>   * Major compact a column family within a table. Asynchronous operation in that this method requests<a name="line.592"></a>
+<span class="sourceLineNo">593</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.593"></a>
+<span class="sourceLineNo">594</span>   * (it can take a while).<a name="line.594"></a>
+<span class="sourceLineNo">595</span>   *<a name="line.595"></a>
+<span class="sourceLineNo">596</span>   * @param tableName table to major compact<a name="line.596"></a>
+<span class="sourceLineNo">597</span>   * @param columnFamily column family within a table<a name="line.597"></a>
+<span class="sourceLineNo">598</span>   * @throws IOException if a remote or network exception occurs<a name="line.598"></a>
+<span class="sourceLineNo">599</span>   */<a name="line.599"></a>
+<span class="sourceLineNo">600</span>  void majorCompact(TableName tableName, byte[] columnFamily)<a name="line.600"></a>
+<span class="sourceLineNo">601</span>    throws IOException;<a name="line.601"></a>
+<span class="sourceLineNo">602</span><a name="line.602"></a>
+<span class="sourceLineNo">603</span>  /**<a name="line.603"></a>
+<span class="sourceLineNo">604</span>   * Major compact a column family within region. Asynchronous operation in that this method requests<a name="line.604"></a>
+<span class="sourceLineNo">605</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.605"></a>
+<span class="sourceLineNo">606</span>   * (it can take a while).<a name="line.606"></a>
+<span class="sourceLineNo">607</span>   *<a name="line.607"></a>
+<span class="sourceLineNo">608</span>   * @param regionName egion to major compact<a name="line.608"></a>
+<span class="sourceLineNo">609</span>   * @param columnFamily column family within a region<a name="line.609"></a>
+<span class="sourceLineNo">610</span>   * @throws IOException if a remote or network exception occurs<a name="line.610"></a>
+<span class="sourceLineNo">611</span>   */<a name="line.611"></a>
+<span class="sourceLineNo">612</span>  void majorCompactRegion(byte[] regionName, byte[] columnFamily)<a name="line.612"></a>
+<span class="sourceLineNo">613</span>    throws IOException;<a name="line.613"></a>
+<span class="sourceLineNo">614</span><a name="line.614"></a>
+<span class="sourceLineNo">615</span>  /**<a name="line.615"></a>
+<span class="sourceLineNo">616</span>   * Major compact a table.  Asynchronous operation in that this method requests that a<a name="line.616"></a>
+<span class="sourceLineNo">617</span>   * Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.617"></a>
+<span class="sourceLineNo">618</span>   * (it can take a while).<a name="line.618"></a>
+<span class="sourceLineNo">619</span>   *<a name="line.619"></a>
+<span class="sourceLineNo">620</span>   * @param tableName table to compact<a name="line.620"></a>
+<span class="sourceLineNo">621</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.621"></a>
+<span class="sourceLineNo">622</span>   * @throws IOException if a remote or network exception occurs<a name="line.622"></a>
+<span class="sourceLineNo">623</span>   * @throws InterruptedException<a name="line.623"></a>
+<span class="sourceLineNo">624</span>   */<a name="line.624"></a>
+<span class="sourceLineNo">625</span>  void majorCompact(TableName tableName, CompactType compactType)<a name="line.625"></a>
+<span class="sourceLineNo">626</span>    throws IOException, InterruptedException;<a name="line.626"></a>
+<span class="sourceLineNo">627</span><a name="line.627"></a>
+<span class="sourceLineNo">628</span>  /**<a name="line.628"></a>
+<span class="sourceLineNo">629</span>   * Major compact a column family within a table.  Asynchronous operation in that this method requests that a<a name="line.629"></a>
+<span class="sourceLineNo">630</span>   * Compaction run and then it returns. It does not wait on the completion of Compaction<a name="line.630"></a>
+<span class="sourceLineNo">631</span>   * (it can take a while).<a name="line.631"></a>
+<span class="sourceLineNo">632</span>   *<a name="line.632"></a>
+<span class="sourceLineNo">633</span>   * @param tableName table to compact<a name="line.633"></a>
+<span class="sourceLineNo">634</span>   * @param columnFamily column family within a table<a name="line.634"></a>
+<span class="sourceLineNo">635</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.635"></a>
+<span class="sourceLineNo">636</span>   * @throws IOException if not a mob column family or if a remote or network exception occurs<a name="line.636"></a>
+<span class="sourceLineNo">637</span>   * @throws InterruptedException<a name="line.637"></a>
+<span class="sourceLineNo">638</span>   */<a name="line.638"></a>
+<span class="sourceLineNo">639</span>  void majorCompact(TableName tableName, byte[] columnFamily, CompactType compactType)<a name="line.639"></a>
+<span class="sourceLineNo">640</span>    throws IOException, InterruptedException;<a name="line.640"></a>
+<span class="sourceLineNo">641</span><a name="line.641"></a>
+<span class="sourceLineNo">642</span>  /**<a name="line.642"></a>
+<span class="sourceLineNo">643</span>   * Turn the compaction on or off. Disabling compactions will also interrupt any currently ongoing<a name="line.643"></a>
+<span class="sourceLineNo">644</span>   * compactions. This state is ephemeral. The setting will be lost on restart. Compaction<a name="line.644"></a>
+<span class="sourceLineNo">645</span>   * can also be enabled/disabled by modifying configuration hbase.regionserver.compaction.enabled<a name="line.645"></a>
+<span class="sourceLineNo">646</span>   * in hbase-site.xml.<a name="line.646"></a>
+<span class="sourceLineNo">647</span>   *<a name="line.647"></a>
+<span class="sourceLineNo">648</span>   * @param switchState     Set to &lt;code&gt;true&lt;/code&gt; to enable, &lt;code&gt;false&lt;/code&gt; to disable.<a name="line.648"></a>
+<span class="sourceLineNo">649</span>   * @param serverNamesList list of region servers.<a name="line.649"></a>
+<span class="sourceLineNo">650</span>   * @return Previous compaction states for region servers<a name="line.650"></a>
+<span class="sourceLineNo">651</span>   */<a name="line.651"></a>
+<span class="sourceLineNo">652</span>  Map&lt;ServerName, Boolean&gt; compactionSwitch(boolean switchState, List&lt;String&gt; serverNamesList)<a name="line.652"></a>
+<span class="sourceLineNo">653</span>      throws IOException;<a name="line.653"></a>
+<span class="sourceLineNo">654</span><a name="line.654"></a>
+<span class="sourceLineNo">655</span>  /**<a name="line.655"></a>
+<span class="sourceLineNo">656</span>   * Compact all regions on the region server. Asynchronous operation in that this method requests<a name="line.656"></a>
+<span class="sourceLineNo">657</span>   * that a Compaction run and then it returns. It does not wait on the completion of Compaction (it<a name="line.657"></a>
+<span class="sourceLineNo">658</span>   * can take a while).<a name="line.658"></a>
+<span class="sourceLineNo">659</span>   * @param serverName the region server name<a name="line.659"></a>
+<span class="sourceLineNo">660</span>   * @throws IOException if a remote or network exception occurs<a name="line.660"></a>
+<span class="sourceLineNo">661</span>   */<a name="line.661"></a>
+<span class="sourceLineNo">662</span>  void compactRegionServer(ServerName serverName) throws IOException;<a name="line.662"></a>
+<span class="sourceLineNo">663</span><a name="line.663"></a>
+<span class="sourceLineNo">664</span>  /**<a name="line.664"></a>
+<span class="sourceLineNo">665</span>   * Major compact all regions on the region server. Asynchronous operation in that this method<a name="line.665"></a>
+<span class="sourceLineNo">666</span>   * requests that a Compaction run and then it returns. It does not wait on the completion of<a name="line.666"></a>
+<span class="sourceLineNo">667</span>   * Compaction (it can take a while).<a name="line.667"></a>
+<span class="sourceLineNo">668</span>   * @param serverName the region server name<a name="line.668"></a>
+<span class="sourceLineNo">669</span>   * @throws IOException if a remote or network exception occurs<a name="line.669"></a>
+<span class="sourceLineNo">670</span>   */<a name="line.670"></a>
+<span class="sourceLineNo">671</span>  void majorCompactRegionServer(ServerName serverName) throws IOException;<a name="line.671"></a>
+<span class="sourceLineNo">672</span><a name="line.672"></a>
+<span class="sourceLineNo">673</span>  /**<a name="line.673"></a>
+<span class="sourceLineNo">674</span>   * Move the region &lt;code&gt;r&lt;/code&gt; to &lt;code&gt;dest&lt;/code&gt;.<a name="line.674"></a>
+<span class="sourceLineNo">675</span>   *<a name="line.675"></a>
+<span class="sourceLineNo">676</span>   * @param encodedRegionName The encoded region name; i.e. the hash that makes up the region name<a name="line.676"></a>
+<span class="sourceLineNo">677</span>   * suffix: e.g. if regionname is<a name="line.677"></a>
+<span class="sourceLineNo">678</span>   * &lt;code&gt;TestTable,0094429456,1289497600452.527db22f95c8a9e0116f0cc13c680396.&lt;/code&gt;,<a name="line.678"></a>
+<span class="sourceLineNo">679</span>   * then the encoded region name is: &lt;code&gt;527db22f95c8a9e0116f0cc13c680396&lt;/code&gt;.<a name="line.679"></a>
+<span class="sourceLineNo">680</span>   * @param destServerName The servername of the destination regionserver.  If passed the empty byte<a name="line.680"></a>
+<span class="sourceLineNo">681</span>   * array we'll assign to a random server.  A server name is made of host, port and startcode.<a name="line.681"></a>
+<span class="sourceLineNo">682</span>   * Here is an example: &lt;code&gt; host187.example.com,60020,1289493121758&lt;/code&gt;<a name="line.682"></a>
+<span class="sourceLineNo">683</span>   * @throws IOException if we can't find a region named<a name="line.683"></a>
+<span class="sourceLineNo">684</span>   * &lt;code&gt;encodedRegionName&lt;/code&gt;<a name="line.684"></a>
+<span class="sourceLineNo">685</span>   */<a name="line.685"></a>
+<span class="sourceLineNo">686</span>  void move(byte[] encodedRegionName, byte[] destServerName) throws IOException;<a name="line.686"></a>
+<span class="sourceLineNo">687</span><a name="line.687"></a>
+<span class="sourceLineNo">688</span>  /**<a name="line.688"></a>
+<span class="sourceLineNo">689</span>   * Assign a Region.<a name="line.689"></a>
+<span class="sourceLineNo">690</span>   * @param regionName Region name to assign.<a name="line.690"></a>
+<span class="sourceLineNo">691</span>   */<a name="line.691"></a>
+<span class="sourceLineNo">692</span>  void assign(byte[] regionName) throws IOException;<a name="line.692"></a>
+<span class="sourceLineNo">693</span><a name="line.693"></a>
+<span class="sourceLineNo">694</span>  /**<a name="line.694"></a>
+<span class="sourceLineNo">695</span>   * Unassign a region from current hosting regionserver.  Region will then be assigned to a<a name="line.695"></a>
+<span class="sourceLineNo">696</span>   * regionserver chosen at random.  Region could be reassigned back to the same server.  Use {@link<a name="line.696"></a>
+<span class="sourceLineNo">697</span>   * #move(byte[], byte[])} if you want to control the region movement.<a name="line.697"></a>
+<span class="sourceLineNo">698</span>   *<a name="line.698"></a>
+<span class="sourceLineNo">699</span>   * @param regionName Region to unassign. Will clear any existing RegionPlan if one found.<a name="line.699"></a>
+<span class="sourceLineNo">700</span>   * @param force If &lt;code&gt;true&lt;/code&gt;, force unassign (Will remove region from regions-in-transition too if<a name="line.700"></a>
+<span class="sourceLineNo">701</span>   * present. If results in double assignment use hbck -fix to resolve. To be used by experts).<a name="line.701"></a>
+<span class="sourceLineNo">702</span>   */<a name="line.702"></a>
+<span class="sourceLineNo">703</span>  void unassign(byte[] regionName, boolean force)<a name="line.703"></a>
+<span class="sourceLineNo">704</span>      throws IOException;<a name="line.704"></a>
+<span class="sourceLineNo">705</span><a name="line.705"></a>
+<span class="sourceLineNo">706</span>  /**<a name="line.706"></a>
+<span class="sourceLineNo">707</span>   * Offline specified region from master's in-memory state. It will not attempt to reassign the<a name="line.707"></a>
+<span class="sourceLineNo">708</span>   * region as in unassign. This API can be used when a region not served by any region server and<a name="line.708"></a>
+<span class="sourceLineNo">709</span>   * still online as per Master's in memory state. If this API is incorrectly used on active region<a name="line.709"></a>
+<span class="sourceLineNo">710</span>   * then master will loose track of that region. This is a special method that should be used by<a name="line.710"></a>
+<span class="sourceLineNo">711</span>   * experts or hbck.<a name="line.711"></a>
+<span class="sourceLineNo">712</span>   *<a name="line.712"></a>
+<span class="sourceLineNo">713</span>   * @param regionName Region to offline.<a name="line.713"></a>
+<span class="sourceLineNo">714</span>   * @throws IOException<a name="line.714"></a>
+<span class="sourceLineNo">715</span>   */<a name="line.715"></a>
+<span class="sourceLineNo">716</span>  void offline(byte[] regionName) throws IOException;<a name="line.716"></a>
+<span class="sourceLineNo">717</span><a name="line.717"></a>
+<span class="sourceLineNo">718</span>  /**<a name="line.718"></a>
+<span class="sourceLineNo">719</span>   * Turn the load balancer on or off.<a name="line.719"></a>
+<span class="sourceLineNo">720</span>   * @param onOrOff Set to &lt;code&gt;true&lt;/code&gt; to enable, &lt;code&gt;false&lt;/code&gt; to disable.<a name="line.720"></a>
+<span class="sourceLineNo">721</span>   * @param synchronous If &lt;code&gt;true&lt;/code&gt;, it waits until current balance() call, if outstanding,<a name="line.721"></a>
+<span class="sourceLineNo">722</span>   *          to return.<a name="line.722"></a>
+<span class="sourceLineNo">723</span>   * @return Previous balancer value<a name="line.723"></a>
+<span class="sourceLineNo">724</span>   */<a name="line.724"></a>
+<span class="sourceLineNo">725</span>  boolean balancerSwitch(boolean onOrOff, boolean synchronous) throws IOException;<a name="line.725"></a>
 <span class="sourceLineNo">726</span><a name="line.726"></a>
-<span class="sourceLineNo">727</span>  /**<a name="line.727"></a>
-<span class="sourceLineNo">728</span>   * Invoke the balancer.  Will run the balancer and if regions to move, it will go ahead and do the<a name="line.728"></a>
-<span class="sourceLineNo">729</span>   * reassignments.  Can NOT run for various reasons.  Check logs.<a name="line.729"></a>
-<span class="sourceLineNo">730</span>   *<a name="line.730"></a>
-<span class="sourceLineNo">731</span>   * @return &lt;code&gt;true&lt;/code&gt; if balancer ran, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.731"></a>
-<span class="sourceLineNo">732</span>   */<a name="line.732"></a>
-<span class="sourceLineNo">733</span>  boolean balance() throws IOException;<a name="line.733"></a>
-<span class="sourceLineNo">734</span><a name="line.734"></a>
-<span class="sourceLineNo">735</span>  /**<a name="line.735"></a>
-<span class="sourceLineNo">736</span>   * Invoke the balancer.  Will run the balancer and if regions to move, it will<a name="line.736"></a>
-<span class="sourceLineNo">737</span>   * go ahead and do the reassignments. If there is region in transition, force parameter of true<a name="line.737"></a>
-<span class="sourceLineNo">738</span>   * would still run balancer. Can *not* run for other reasons.  Check<a name="line.738"></a>
-<span class="sourceLineNo">739</span>   * logs.<a name="line.739"></a>
-<span class="sourceLineNo">740</span>   * @param force whether we should force balance even if there is region in transition<a name="line.740"></a>
-<span class="sourceLineNo">741</span>   * @return &lt;code&gt;true&lt;/code&gt; if balancer ran, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.741"></a>
-<span class="sourceLineNo">742</span>   */<a name="line.742"></a>
-<span class="sourceLineNo">743</span>  boolean balance(boolean force) throws IOException;<a name="line.743"></a>
-<span class="sourceLineNo">744</span><a name="line.744"></a>
-<span class="sourceLineNo">745</span>  /**<a name="line.745"></a>
-<span class="sourceLineNo">746</span>   * Query the current state of the balancer.<a name="line.746"></a>
-<span class="sourceLineNo">747</span>   *<a name="line.747"></a>
-<span class="sourceLineNo">748</span>   * @return &lt;code&gt;true&lt;/code&gt; if the balancer is enabled, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.748"></a>
-<span class="sourceLineNo">749</span>   */<a name="line.749"></a>
-<span class="sourceLineNo">750</span>  boolean isBalancerEnabled() throws IOException;<a name="line.750"></a>
-<span class="sourceLineNo">751</span><a name="line.751"></a>
-<span class="sourceLineNo">752</span>  /**<a name="line.752"></a>
-<span class="sourceLineNo">753</span>   * Clear all the blocks corresponding to this table from BlockCache. For expert-admins.<a name="line.753"></a>
-<span class="sourceLineNo">754</span>   * Calling this API will drop all the cached blocks specific to a table from BlockCache.<a name="line.754"></a>
-<span class="sourceLineNo">755</span>   * This can significantly impact the query performance as the subsequent queries will<a name="line.755"></a>
-<span class="sourceLineNo">756</span>   * have to retrieve the blocks from underlying filesystem.<a name="line.756"></a>
-<span class="sourceLineNo">757</span>   *<a name="line.757"></a>
-<span class="sourceLineNo">758</span>   * @param tableName table to clear block cache<a name="line.758"></a>
-<span class="sourceLineNo">759</span>   * @return CacheEvictionStats related to the eviction<a name="line.759"></a>
-<span class="sourceLineNo">760</span>   * @throws IOException if a remote or network exception occurs<a name="line.760"></a>
-<span class="sourceLineNo">761</span>   */<a name="line.761"></a>
-<span class="sourceLineNo">762</span>  CacheEvictionStats clearBlockCache(final TableName tableName) throws IOException;<a name="line.762"></a>
-<span class="sourceLineNo">763</span><a name="line.763"></a>
-<span class="sourceLineNo">764</span>  /**<a name="line.764"></a>
-<span class="sourceLineNo">765</span>   * Invoke region normalizer. Can NOT run for various reasons.  Check logs.<a name="line.765"></a>
-<span class="sourceLineNo">766</span>   *<a name="line.766"></a>
-<span class="sourceLineNo">767</span>   * @return &lt;code&gt;true&lt;/code&gt; if region normalizer ran, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.767"></a>
-<span class="sourceLineNo">768</span>   */<a name="line.768"></a>
-<span class="sourceLineNo">769</span>  boolean normalize() throws IOException;<a name="line.769"></a>
-<span class="sourceLineNo">770</span><a name="line.770"></a>
-<span class="sourceLineNo">771</span>  /**<a name="line.771"></a>
-<span class="sourceLineNo">772</span>   * Query the current state of the region normalizer.<a name="line.772"></a>
-<span class="sourceLineNo">773</span>   *<a name="line.773"></a>
-<span class="sourceLineNo">774</span>   * @return &lt;code&gt;true&lt;/code&gt; if region normalizer is enabled, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.774"></a>
-<span class="sourceLineNo">775</span>   */<a name="line.775"></a>
-<span class="sourceLineNo">776</span>  boolean isNormalizerEnabled() throws IOException;<a name="line.776"></a>
-<span class="sourceLineNo">777</span><a name="line.777"></a>
-<span class="sourceLineNo">778</span>  /**<a name="line.778"></a>
-<span class="sourceLineNo">779</span>   * Turn region normalizer on or off.<a name="line.779"></a>
-<span class="sourceLineNo">780</span>   *<a name="line.780"></a>
-<span class="sourceLineNo">781</span>   * @return Previous normalizer value<a name="line.781"></a>
-<span class="sourceLineNo">782</span>   */<a name="line.782"></a>
-<span class="sourceLineNo">783</span>  boolean normalizerSwitch(boolean on) throws IOException;<a name="line.783"></a>
-<span class="sourceLineNo">784</span><a name="line.784"></a>
-<span class="sourceLineNo">785</span>  /**<a name="line.785"></a>
-<span class="sourceLineNo">786</span>   * Enable/Disable the catalog janitor/<a name="line.786"></a>
-<span class="sourceLineNo">787</span>   *<a name="line.787"></a>
-<span class="sourceLineNo">788</span>   * @param onOrOff if &lt;code&gt;true&lt;/code&gt; enables the catalog janitor<a name="line.788"></a>
-<span class="sourceLineNo">789</span>   * @return the previous state<a name="line.789"></a>
-<span class="sourceLineNo">790</span>   */<a name="line.790"></a>
-<span class="sourceLineNo">791</span>  boolean catalogJanitorSwitch(boolean onOrOff) throws IOException;<a name="line.791"></a>
-<span class="sourceLineNo">792</span><a name="line.792"></a>
-<span class="sourceLineNo">793</span>  /**<a name="line.793"></a>
-<span class="sourceLineNo">794</span>   * Ask for a scan of the catalog table.<a name="line.794"></a>
-<span class="sourceLineNo">795</span>   *<a name="line.795"></a>
-<span class="sourceLineNo">796</span>   * @return the number of entries cleaned<a name="line.796"></a>
-<span class="sourceLineNo">797</span>   */<a name="line.797"></a>
-<span class="sourceLineNo">798</span>  int runCatalogJanitor() throws IOException;<a name="line.798"></a>
-<span class="sourceLineNo">799</span><a name="line.799"></a>
-<span class="sourceLineNo">800</span>  /**<a name="line.800"></a>
-<span class="sourceLineNo">801</span>   * Query on the catalog janitor state (Enabled/Disabled?).<a name="line.801"></a>
-<span class="sourceLineNo">802</span>   *<a name="line.802"></a>
-<span class="sourceLineNo">803</span>   */<a name="line.803"></a>
-<span class="sourceLineNo">804</span>  boolean isCatalogJanitorEnabled() throws IOException;<a name="line.804"></a>
-<span class="sourceLineNo">805</span><a name="line.805"></a>
-<span class="sourceLineNo">806</span>  /**<a name="line.806"></a>
-<span class="sourceLineNo">807</span>   * Enable/Disable the cleaner chore.<a name="line.807"></a>
-<span class="sourceLineNo">808</span>   *<a name="line.808"></a>
-<span class="sourceLineNo">809</span>   * @param onOrOff if &lt;code&gt;true&lt;/code&gt; enables the cleaner chore<a name="line.809"></a>
-<span class="sourceLineNo">810</span>   * @return the previous state<a name="line.810"></a>
-<span class="sourceLineNo">811</span>   * @throws IOException<a name="line.811"></a>
-<span class="sourceLineNo">812</span>   */<a name="line.812"></a>
-<span class="sourceLineNo">813</span>  boolean cleanerChoreSwitch(boolean onOrOff) throws IOException;<a name="line.813"></a>
-<span class="sourceLineNo">814</span><a name="line.814"></a>
-<span class="sourceLineNo">815</span>  /**<a name="line.815"></a>
-<span class="sourceLineNo">816</span>   * Ask for cleaner chore to run.<a name="line.816"></a>
-<span class="sourceLineNo">817</span>   *<a name="line.817"></a>
-<span class="sourceLineNo">818</span>   * @return &lt;code&gt;true&lt;/code&gt; if cleaner chore ran, &lt;code&gt;false&lt;/code&gt; otherwise<a name="line.818"></a>
-<span class="sourceLineNo">819</span>   * @throws IOException<a name="line.819"></a>
-<span class="sourceLineNo">820</span>   */<a name="line.820"></a>
-<span class="sourceLineNo">821</span>  boolean runCleanerChore() throws IOException;<a name="line.821"></a>
-<span class="sourceLineNo">822</span><a name="line.822"></a>
-<span class="sourceLineNo">823</span>  /**<a name="line.823"></a>
-<span class="sourceLineNo">824</span>   * Query on the cleaner chore state (Enabled/Disabled?).<a name="line.824"></a>
-<span class="sourceLineNo">825</span>   *<a name="line.825"></a>
-<span class="sourceLineNo">826</span>   * @throws IOException<a name="line.826"></a>
-<span class="sourceLineNo">827</span>   */<a name="line.827"></a>
-<span class="sourceLineNo">828</span>  boolean isCleanerChoreEnabled() throws IOException;<a name="line.828"></a>
-<span class="sourceLineNo">829</span><a name="line.829"></a>
+<span class="sourceLineNo">727</span><a name="line.727"></a>
+<span class="sourceLineNo">728</span>  /**<a name="line.728"></a>
+<span class="sourceLineNo">729</span>   * Invoke the balancer.  Will run the balancer and if regions to move, it will go ahead and do the<a name="line.729"></a>
+<span class="sourceLineNo">730</span>   * reassignments.  Can NOT run for various reasons.  Check logs.<a name="line.730"></a>
+<span class="sourceLineNo">731</span>   *<a name="line.731"></a>
+<span class="sourceLineNo">732</span>   * @return &lt;code&gt;true&lt;/code&gt; if balancer ran, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.732"></a>
+<span class="sourceLineNo">733</span>   */<a name="line.733"></a>
+<span class="sourceLineNo">734</span>  boolean balance() throws IOException;<a name="line.734"></a>
+<span class="sourceLineNo">735</span><a name="line.735"></a>
+<span class="sourceLineNo">736</span>  /**<a name="line.736"></a>
+<span class="sourceLineNo">737</span>   * Invoke the balancer.  Will run the balancer and if regions to move, it will<a name="line.737"></a>
+<span class="sourceLineNo">738</span>   * go ahead and do the reassignments. If there is region in transition, force parameter of true<a name="line.738"></a>
+<span class="sourceLineNo">739</span>   * would still run balancer. Can *not* run for other reasons.  Check<a name="line.739"></a>
+<span class="sourceLineNo">740</span>   * logs.<a name="line.740"></a>
+<span class="sourceLineNo">741</span>   * @param force whether we should force balance even if there is region in transition<a name="line.741"></a>
+<span class="sourceLineNo">742</span>   * @return &lt;code&gt;true&lt;/code&gt; if balancer ran, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.742"></a>
+<span class="sourceLineNo">743</span>   */<a name="line.743"></a>
+<span class="sourceLineNo">744</span>  boolean balance(boolean force) throws IOException;<a name="line.744"></a>
+<span class="sourceLineNo">745</span><a name="line.745"></a>
+<span class="sourceLineNo">746</span>  /**<a name="line.746"></a>
+<span class="sourceLineNo">747</span>   * Query the current state of the balancer.<a name="line.747"></a>
+<span class="sourceLineNo">748</span>   *<a name="line.748"></a>
+<span class="sourceLineNo">749</span>   * @return &lt;code&gt;true&lt;/code&gt; if the balancer is enabled, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.749"></a>
+<span class="sourceLineNo">750</span>   */<a name="line.750"></a>
+<span class="sourceLineNo">751</span>  boolean isBalancerEnabled() throws IOException;<a name="line.751"></a>
+<span class="sourceLineNo">752</span><a name="line.752"></a>
+<span class="sourceLineNo">753</span>  /**<a name="line.753"></a>
+<span class="sourceLineNo">754</span>   * Clear all the blocks corresponding to this table from BlockCache. For expert-admins.<a name="line.754"></a>
+<span class="sourceLineNo">755</span>   * Calling this API will drop all the cached blocks specific to a table from BlockCache.<a name="line.755"></a>
+<span class="sourceLineNo">756</span>   * This can significantly impact the query performance as the subsequent queries will<a name="line.756"></a>
+<span class="sourceLineNo">757</span>   * have to retrieve the blocks from underlying filesystem.<a name="line.757"></a>
+<span class="sourceLineNo">758</span>   *<a name="line.758"></a>
+<span class="sourceLineNo">759</span>   * @param tableName table to clear block cache<a name="line.759"></a>
+<span class="sourceLineNo">760</span>   * @return CacheEvictionStats related to the eviction<a name="line.760"></a>
+<span class="sourceLineNo">761</span>   * @throws IOException if a remote or network exception occurs<a name="line.761"></a>
+<span class="sourceLineNo">762</span>   */<a name="line.762"></a>
+<span class="sourceLineNo">763</span>  CacheEvictionStats clearBlockCache(final TableName tableName) throws IOException;<a name="line.763"></a>
+<span class="sourceLineNo">764</span><a name="line.764"></a>
+<span class="sourceLineNo">765</span>  /**<a name="line.765"></a>
+<span class="sourceLineNo">766</span>   * Invoke region normalizer. Can NOT run for various reasons.  Check logs.<a name="line.766"></a>
+<span class="sourceLineNo">767</span>   *<a name="line.767"></a>
+<span class="sourceLineNo">768</span>   * @return &lt;code&gt;true&lt;/code&gt; if region normalizer ran, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.768"></a>
+<span class="sourceLineNo">769</span>   */<a name="line.769"></a>
+<span class="sourceLineNo">770</span>  boolean normalize() throws IOException;<a name="line.770"></a>
+<span class="sourceLineNo">771</span><a name="line.771"></a>
+<span class="sourceLineNo">772</span>  /**<a name="line.772"></a>
+<span class="sourceLineNo">773</span>   * Query the current state of the region normalizer.<a name="line.773"></a>
+<span class="sourceLineNo">774</span>   *<a name="line.774"></a>
+<span class="sourceLineNo">775</span>   * @return &lt;code&gt;true&lt;/code&gt; if region normalizer is enabled, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.775"></a>
+<span class="sourceLineNo">776</span>   */<a name="line.776"></a>
+<span class="sourceLineNo">777</span>  boolean isNormalizerEnabled() throws IOException;<a name="line.777"></a>
+<span class="sourceLineNo">778</span><a name="line.778"></a>
+<span class="sourceLineNo">779</span>  /**<a name="line.779"></a>
+<span class="sourceLineNo">780</span>   * Turn region normalizer on or off.<a name="line.780"></a>
+<span class="sourceLineNo">781</span>   *<a name="line.781"></a>
+<span class="sourceLineNo">782</span>   * @return Previous normalizer value<a name="line.782"></a>
+<span class="sourceLineNo">783</span>   */<a name="line.783"></a>
+<span class="sourceLineNo">784</span>  boolean normalizerSwitch(boolean on) throws IOException;<a name="line.784"></a>
+<span class="sourceLineNo">785</span><a name="line.785"></a>
+<span class="sourceLineNo">786</span>  /**<a name="line.786"></a>
+<span class="sourceLineNo">787</span>   * Enable/Disable the catalog janitor/<a name="line.787"></a>
+<span class="sourceLineNo">788</span>   *<a name="line.788"></a>
+<span class="sourceLineNo">789</span>   * @param onOrOff if &lt;code&gt;true&lt;/code&gt; enables the catalog janitor<a name="line.789"></a>
+<span class="sourceLineNo">790</span>   * @return the previous state<a name="line.790"></a>
+<span class="sourceLineNo">791</span>   */<a name="line.791"></a>
+<span class="sourceLineNo">792</span>  boolean catalogJanitorSwitch(boolean onOrOff) throws IOException;<a name="line.792"></a>
+<span class="sourceLineNo">793</span><a name="line.793"></a>
+<span class="sourceLineNo">794</span>  /**<a name="line.794"></a>
+<span class="sourceLineNo">795</span>   * Ask for a scan of the catalog table.<a name="line.795"></a>
+<span class="sourceLineNo">796</span>   *<a name="line.796"></a>
+<span class="sourceLineNo">797</span>   * @return the number of entries cleaned<a name="line.797"></a>
+<span class="sourceLineNo">798</span>   */<a name="line.798"></a>
+<span class="sourceLineNo">799</span>  int runCatalogJanitor() throws IOException;<a name="line.799"></a>
+<span class="sourceLineNo">800</span><a name="line.800"></a>
+<span class="sourceLineNo">801</span>  /**<a name="line.801"></a>
+<span class="sourceLineNo">802</span>   * Query on the catalog janitor state (Enabled/Disabled?).<a name="line.802"></a>
+<span class="sourceLineNo">803</span>   *<a name="line.803"></a>
+<span class="sourceLineNo">804</span>   */<a name="line.804"></a>
+<span class="sourceLineNo">805</span>  boolean isCatalogJanitorEnabled() throws IOException;<a name="line.805"></a>
+<span class="sourceLineNo">806</span><a name="line.806"></a>
+<span class="sourceLineNo">807</span>  /**<a name="line.807"></a>
+<span class="sourceLineNo">808</span>   * Enable/Disable the cleaner chore.<a name="line.808"></a>
+<span class="sourceLineNo">809</span>   *<a name="line.809"></a>
+<span class="sourceLineNo">810</span>   * @param onOrOff if &lt;code&gt;true&lt;/code&gt; enables the cleaner chore<a name="line.810"></a>
+<span class="sourceLineNo">811</span>   * @return the previous state<a name="line.811"></a>
+<span class="sourceLineNo">812</span>   * @throws IOException<a name="line.812"></a>
+<span class="sourceLineNo">813</span>   */<a name="line.813"></a>
+<span class="sourceLineNo">814</span>  boolean cleanerChoreSwitch(boolean onOrOff) throws IOException;<a name="line.814"></a>
+<span class="sourceLineNo">815</span><a name="line.815"></a>
+<span class="sourceLineNo">816</span>  /**<a name="line.816"></a>
+<span class="sourceLineNo">817</span>   * Ask for cleaner chore to run.<a name="line.817"></a>
+<span class="sourceLineNo">818</span>   *<a name="line.818"></a>
+<span class="sourceLineNo">819</span>   * @return &lt;code&gt;true&lt;/code&gt; if cleaner chore ran, &lt;code&gt;false&lt;/code&gt; otherwise<a name="line.819"></a>
+<span class="sourceLineNo">820</span>   * @throws IOException<a name="line.820"></a>
+<span class="sourceLineNo">821</span>   */<a name="line.821"></a>
+<span class="sourceLineNo">822</span>  boolean runCleanerChore() throws IOException;<a name="line.822"></a>
+<span class="sourceLineNo">823</span><a name="line.823"></a>
+<span class="sourceLineNo">824</span>  /**<a name="line.824"></a>
+<span class="sourceLineNo">825</span>   * Query on the cleaner chore state (Enabled/Disabled?).<a name="line.825"></a>
+<span class="sourceLineNo">826</span>   *<a name="line.826"></a>
+<span class="sourceLineNo">827</span>   * @throws IOException<a name="line.827"></a>
+<span class="sourceLineNo">828</span>   */<a name="line.828"></a>
+<span class="sourceLineNo">829</span>  boolean isCleanerChoreEnabled() throws IOException;<a name="line.829"></a>
 <span class="sourceLineNo">830</span><a name="line.830"></a>
-<span class="sourceLineNo">831</span>  /**<a name="line.831"></a>
-<span class="sourceLineNo">832</span>   * Merge two regions. Asynchronous operation.<a name="line.832"></a>
-<span class="sourceLineNo">833</span>   * @param nameOfRegionA encoded or full name of region a<a name="line.833"></a>
-<span class="sourceLineNo">834</span>   * @param nameOfRegionB encoded or full name of region b<a name="line.834"></a>
-<span class="sourceLineNo">835</span>   * @param forcible &lt;code&gt;true&lt;/code&gt; if do a compulsory merge, otherwise we will only merge two<a name="line.835"></a>
-<span class="sourceLineNo">836</span>   *          adjacent regions<a name="line.836"></a>
-<span class="sourceLineNo">837</span>   */<a name="line.837"></a>
-<span class="sourceLineNo">838</span>  default Future&lt;Void&gt; mergeRegionsAsync(byte[] nameOfRegionA, byte[] nameOfRegionB,<a name="line.838"></a>
-<span class="sourceLineNo">839</span>      boolean forcible) throws IOException {<a name="line.839"></a>
-<span class="sourceLineNo">840</span>    byte[][] nameofRegionsToMerge = new byte[2][];<a name="line.840"></a>
-<span class="sourceLineNo">841</span>    nameofRegionsToMerge[0] = nameOfRegionA;<a name="line.841"></a>
-<span class="sourceLineNo">842</span>    nameofRegionsToMerge[1] = nameOfRegionB;<a name="line.842"></a>
-<span class="sourceLineNo">843</span>    return mergeRegionsAsync(nameofRegionsToMerge, forcible);<a name="line.843"></a>
-<span class="sourceLineNo">844</span>  }<a name="line.844"></a>
-<span class="sourceLineNo">845</span><a name="line.845"></a>
-<span class="sourceLineNo">846</span>  /**<a name="line.846"></a>
-<span class="sourceLineNo">847</span>   * Merge regions. Asynchronous operation.<a name="line.847"></a>
-<span class="sourceLineNo">848</span>   * &lt;p/&gt;<a name="line.848"></a>
-<span class="sourceLineNo">849</span>   * You may get a {@code DoNotRetryIOException} if you pass more than two regions in but the master<a name="line.849"></a>
-<span class="sourceLineNo">850</span>   * does not support merging more than two regions. At least till 2.2.0, we still only support<a name="line.850"></a>
-<span class="sourceLineNo">851</span>   * merging two regions.<a name="line.851"></a>
-<span class="sourceLineNo">852</span>   * @param nameofRegionsToMerge encoded or full name of daughter regions<a name="line.852"></a>
-<span class="sourceLineNo">853</span>   * @param forcible &lt;code&gt;true&lt;/code&gt; if do a compulsory merge, otherwise we will only merge<a name="line.853"></a>
-<span class="sourceLineNo">854</span>   *          adjacent regions<a name="line.854"></a>
-<span class="sourceLineNo">855</span>   */<a name="line.855"></a>
-<span class="sourceLineNo">856</span>  Future&lt;Void&gt; mergeRegionsAsync(byte[][] nameofRegionsToMerge, boolean forcible)<a name="line.856"></a>
-<span class="sourceLineNo">857</span>      throws IOException;<a name="line.857"></a>
-<span class="sourceLineNo">858</span><a name="line.858"></a>
-<span class="sourceLineNo">859</span>  /**<a name="line.859"></a>
-<span class="sourceLineNo">860</span>   * Split a table. The method will execute split action for each region in table.<a name="line.860"></a>
-<span class="sourceLineNo">861</span>   * Asynchronous operation.<a name="line.861"></a>
-<span class="sourceLineNo">862</span>   * @param tableName table to split<a name="line.862"></a>
-<span class="sourceLineNo">863</span>   * @throws IOException if a remote or network exception occurs<a name="line.863"></a>
-<span class="sourceLineNo">864</span>   */<a name="line.864"></a>
-<span class="sourceLineNo">865</span>  void split(TableName tableName) throws IOException;<a name="line.865"></a>
-<span class="sourceLineNo">866</span><a name="line.866"></a>
-<span class="sourceLineNo">867</span>  /**<a name="line.867"></a>
-<span class="sourceLineNo">868</span>   * Split a table. Asynchronous operation.<a name="line.868"></a>
-<span class="sourceLineNo">869</span>   *<a name="line.869"></a>
-<span class="sourceLineNo">870</span>   * @param tableName table to split<a name="line.870"></a>
-<span class="sourceLineNo">871</span>   * @param splitPoint the explicit position to split on<a name="line.871"></a>
-<span class="sourceLineNo">872</span>   * @throws IOException if a remote or network exception occurs<a name="line.872"></a>
-<span class="sourceLineNo">873</span>   */<a name="line.873"></a>
-<span class="sourceLineNo">874</span>  void split(TableName tableName, byte[] splitPoint) throws IOException;<a name="line.874"></a>
-<span class="sourceLineNo">875</span><a name="line.875"></a>
-<span class="sourceLineNo">876</span>  /**<a name="line.876"></a>
-<span class="sourceLineNo">877</span>   * Split an individual region. Asynchronous operation.<a name="line.877"></a>
-<span class="sourceLineNo">878</span>   * @param regionName region to split<a name="line.878"></a>
-<span class="sourceLineNo">879</span>   * @param splitPoint the explicit position to split on<a name="line.879"></a>
-<span class="sourceLineNo">880</span>   * @throws IOException if a remote or network exception occurs<a name="line.880"></a>
-<span class="sourceLineNo">881</span>   */<a name="line.881"></a>
-<span class="sourceLineNo">882</span>  Future&lt;Void&gt; splitRegionAsync(byte[] regionName, byte[] splitPoint) throws IOException;<a name="line.882"></a>
-<span class="sourceLineNo">883</span><a name="line.883"></a>
-<span class="sourceLineNo">884</span>  /**<a name="line.884"></a>
-<span class="sourceLineNo">885</span>   * Modify an existing table, more IRB friendly version.<a name="line.885"></a>
-<span class="sourceLineNo">886</span>   * @param td modified description of the table<a name="line.886"></a>
-<span class="sourceLineNo">887</span>   * @throws IOException if a remote or network exception occurs<a name="line.887"></a>
-<span class="sourceLineNo">888</span>   */<a name="line.888"></a>
-<span class="sourceLineNo">889</span>  default void modifyTable(TableDescriptor td) throws IOException {<a name="line.889"></a>
-<span class="sourceLineNo">890</span>    get(modifyTableAsync(td), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.890"></a>
-<span class="sourceLineNo">891</span>  }<a name="line.891"></a>
-<span class="sourceLineNo">892</span><a name="line.892"></a>
-<span class="sourceLineNo">893</span>  /**<a name="line.893"></a>
-<span class="sourceLineNo">894</span>   * Modify an existing table, more IRB (ruby) friendly version. Asynchronous operation. This means<a name="line.894"></a>
-<span class="sourceLineNo">895</span>   * that it may be a while before your schema change is updated across all of the table. You can<a name="line.895"></a>
-<span class="sourceLineNo">896</span>   * use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.896"></a>
-<span class="sourceLineNo">897</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.897"></a>
-<span class="sourceLineNo">898</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.898"></a>
-<span class="sourceLineNo">899</span>   * @param td description of the table<a name="line.899"></a>
-<span class="sourceLineNo">900</span>   * @throws IOException if a remote or network exception occurs<a name="line.900"></a>
-<span class="sourceLineNo">901</span>   * @return the result of the async modify. You can use Future.get(long, TimeUnit) to wait on the<a name="line.901"></a>
-<span class="sourceLineNo">902</span>   *         operation to complete<a name="line.902"></a>
-<span class="sourceLineNo">903</span>   */<a name="line.903"></a>
-<span class="sourceLineNo">904</span>  Future&lt;Void&gt; modifyTableAsync(TableDescriptor td) throws IOException;<a name="line.904"></a>
-<span class="sourceLineNo">905</span><a name="line.905"></a>
-<span class="sourceLineNo">906</span>  /**<a name="line.906"></a>
-<span class="sourceLineNo">907</span>   * Shuts down the HBase cluster.<a name="line.907"></a>
-<span class="sourceLineNo">908</span>   * &lt;p/&gt;<a name="line.908"></a>
-<span class="sourceLineNo">909</span>   * Notice that, a success shutdown call may ends with an error since the remote server has already<a name="line.909"></a>
-<span class="sourceLineNo">910</span>   * been shutdown.<a name="line.910"></a>
-<span class="sourceLineNo">911</span>   * @throws IOException if a remote or network exception occurs<a name="line.911"></a>
-<span class="sourceLineNo">912</span>   */<a name="line.912"></a>
-<span class="sourceLineNo">913</span>  void shutdown() throws IOException;<a name="line.913"></a>
-<span class="sourceLineNo">914</span><a name="line.914"></a>
-<span class="sourceLineNo">915</span>  /**<a name="line.915"></a>
-<span class="sourceLineNo">916</span>   * Shuts down the current HBase master only. Does not shutdown the cluster.<a name="line.916"></a>
-<span class="sourceLineNo">917</span>   * &lt;p/&gt;<a name="line.917"></a>
-<span class="sourceLineNo">918</span>   * Notice that, a success stopMaster call may ends with an error since the remote server has<a name="line.918"></a>
-<span class="sourceLineNo">919</span>   * already been shutdown.<a name="line.919"></a>
-<span class="sourceLineNo">920</span>   * @throws IOException if a remote or network exception occurs<a name="line.920"></a>
-<span class="sourceLineNo">921</span>   * @see #shutdown()<a name="line.921"></a>
-<span class="sourceLineNo">922</span>   */<a name="line.922"></a>
-<span class="sourceLineNo">923</span>  void stopMaster() throws IOException;<a name="line.923"></a>
-<span class="sourceLineNo">924</span><a name="line.924"></a>
-<span class="sourceLineNo">925</span>  /**<a name="line.925"></a>
-<span class="sourceLineNo">926</span>   * Check whether Master is in maintenance mode.<a name="line.926"></a>
-<span class="sourceLineNo">927</span>   *<a name="line.927"></a>
-<span class="sourceLineNo">928</span>   * @throws IOException if a remote or network exception occurs<a name="line.928"></a>
-<span class="sourceLineNo">929</span>   */<a name="line.929"></a>
-<span class="sourceLineNo">930</span>  boolean isMasterInMaintenanceMode()  throws IOException;<a name="line.930"></a>
-<span class="sourceLineNo">931</span><a name="line.931"></a>
-<span class="sourceLineNo">932</span>  /**<a name="line.932"></a>
-<span class="sourceLineNo">933</span>   * Stop the designated regionserver.<a name="line.933"></a>
-<span class="sourceLineNo">934</span>   *<a name="line.934"></a>
-<span class="sourceLineNo">935</span>   * @param hostnamePort Hostname and port delimited by a &lt;code&gt;:&lt;/code&gt; as in<a name="line.935"></a>
-<span class="sourceLineNo">936</span>   * &lt;code&gt;example.org:1234&lt;/code&gt;<a name="line.936"></a>
-<span class="sourceLineNo">937</span>   * @throws IOException if a remote or network exception occurs<a name="line.937"></a>
-<span class="sourceLineNo">938</span>   */<a name="line.938"></a>
-<span class="sourceLineNo">939</span>  void stopRegionServer(String hostnamePort) throws IOException;<a name="line.939"></a>
-<span class="sourceLineNo">940</span><a name="line.940"></a>
-<span class="sourceLineNo">941</span>  /**<a name="line.941"></a>
-<span class="sourceLineNo">942</span>   * Get whole cluster metrics, containing status about:<a name="line.942"></a>
-<span class="sourceLineNo">943</span>   * &lt;pre&gt;<a name="line.943"></a>
-<span class="sourceLineNo">944</span>   * hbase version<a name="line.944"></a>
-<span class="sourceLineNo">945</span>   * cluster id<a name="line.945"></a>
-<span class="sourceLineNo">946</span>   * primary/backup master(s)<a name="line.946"></a>
-<span class="sourceLineNo">947</span>   * master's coprocessors<a name="line.947"></a>
-<span class="sourceLineNo">948</span>   * live/dead regionservers<a name="line.948"></a>
-<span class="sourceLineNo">949</span>   * balancer<a name="line.949"></a>
-<span class="sourceLineNo">950</span>   * regions in transition<a name="line.950"></a>
-<span class="sourceLineNo">951</span>   * &lt;/pre&gt;<a name="line.951"></a>
-<span class="sourceLineNo">952</span>   * @return cluster metrics<a name="line.952"></a>
-<span class="sourceLineNo">953</span>   * @throws IOException if a remote or network exception occurs<a name="line.953"></a>
-<span class="sourceLineNo">954</span>   */<a name="line.954"></a>
-<span class="sourceLineNo">955</span>  default ClusterMetrics getClusterMetrics() throws IOException {<a name="line.955"></a>
-<span class="sourceLineNo">956</span>    return getClusterMetrics(EnumSet.allOf(ClusterMetrics.Option.class));<a name="line.956"></a>
-<span class="sourceLineNo">957</span>  }<a name="line.957"></a>
-<span class="sourceLineNo">958</span><a name="line.958"></a>
-<span class="sourceLineNo">959</span>  /**<a name="line.959"></a>
-<span class="sourceLineNo">960</span>   * Get cluster status with a set of {@link Option} to get desired status.<a name="line.960"></a>
-<span class="sourceLineNo">961</span>   * @return cluster status<a name="line.961"></a>
-<span class="sourceLineNo">962</span>   * @throws IOException if a remote or network exception occurs<a name="line.962"></a>
-<span class="sourceLineNo">963</span>   */<a name="line.963"></a>
-<span class="sourceLineNo">964</span>  ClusterMetrics getClusterMetrics(EnumSet&lt;Option&gt; options) throws IOException;<a name="line.964"></a>
-<span class="sourceLineNo">965</span><a name="line.965"></a>
-<span class="sourceLineNo">966</span>  /**<a name="line.966"></a>
-<span class="sourceLineNo">967</span>   * @return current master server name<a name="line.967"></a>
-<span class="sourceLineNo">968</span>   * @throws IOException if a remote or network exception occurs<a name="line.968"></a>
-<span class="sourceLineNo">969</span>   */<a name="line.969"></a>
-<span class="sourceLineNo">970</span>  default ServerName getMaster() throws IOException {<a name="line.970"></a>
-<span class="sourceLineNo">971</span>    return getClusterMetrics(EnumSet.of(Option.MASTER)).getMasterName();<a name="line.971"></a>
-<span class="sourceLineNo">972</span>  }<a name="line.972"></a>
-<span class="sourceLineNo">973</span><a name="line.973"></a>
-<span class="sourceLineNo">974</span>  /**<a name="line.974"></a>
-<span class="sourceLineNo">975</span>   * @return current backup master list<a name="line.975"></a>
-<span class="sourceLineNo">976</span>   * @throws IOException if a remote or network exception occurs<a name="line.976"></a>
-<span class="sourceLineNo">977</span>   */<a name="line.977"></a>
-<span class="sourceLineNo">978</span>  default Collection&lt;ServerName&gt; getBackupMasters() throws IOException {<a name="line.978"></a>
-<span class="sourceLineNo">979</span>    return getClusterMetrics(EnumSet.of(Option.BACKUP_MASTERS)).getBackupMasterNames();<a name="line.979"></a>
-<span class="sourceLineNo">980</span>  }<a name="line.980"></a>
-<span class="sourceLineNo">981</span><a name="line.981"></a>
-<span class="sourceLineNo">982</span>  /**<a name="line.982"></a>
-<span class="sourceLineNo">983</span>   * @return current live region servers list<a name="line.983"></a>
-<span class="sourceLineNo">984</span>   * @throws IOException if a remote or network exception occurs<a name="line.984"></a>
-<span class="sourceLineNo">985</span>   */<a name="line.985"></a>
-<span class="sourceLineNo">986</span>  default Collection&lt;ServerName&gt; getRegionServers() throws IOException {<a name="line.986"></a>
-<span class="sourceLineNo">987</span>    return getClusterMetrics(EnumSet.of(Option.LIVE_SERVERS)).getLiveServerMetrics().keySet();<a name="line.987"></a>
-<span class="sourceLineNo">988</span>  }<a name="line.988"></a>
-<span class="sourceLineNo">989</span><a name="line.989"></a>
-<span class="sourceLineNo">990</span>  /**<a name="line.990"></a>
-<span class="sourceLineNo">991</span>   * Get {@link RegionMetrics} of all regions hosted on a regionserver.<a name="line.991"></a>
-<span class="sourceLineNo">992</span>   *<a name="line.992"></a>
-<span class="sourceLineNo">993</span>   * @param serverName region server from which {@link RegionMetrics} is required.<a name="line.993"></a>
-<span class="sourceLineNo">994</span>   * @return a {@link RegionMetrics} list of all regions hosted on a region server<a name="line.994"></a>
-<span class="sourceLineNo">995</span>   * @throws IOException if a remote or network exception occurs<a name="line.995"></a>
-<span class="sourceLineNo">996</span>   */<a name="line.996"></a>
-<span class="sourceLineNo">997</span>  default List&lt;RegionMetrics&gt; getRegionMetrics(ServerName serverName) throws IOException {<a name="line.997"></a>
-<span class="sourceLineNo">998</span>    return getRegionMetrics(serverName, null);<a name="line.998"></a>
-<span class="sourceLineNo">999</span>  }<a name="line.999"></a>
-<span class="sourceLineNo">1000</span><a name="line.1000"></a>
-<span class="sourceLineNo">1001</span>  /**<a name="line.1001"></a>
-<span class="sourceLineNo">1002</span>   * Get {@link RegionMetrics} of all regions hosted on a regionserver for a table.<a name="line.1002"></a>
-<span class="sourceLineNo">1003</span>   *<a name="line.1003"></a>
-<span class="sourceLineNo">1004</span>   * @param serverName region server from which {@link RegionMetrics} is required.<a name="line.1004"></a>
-<span class="sourceLineNo">1005</span>   * @param tableName get {@link RegionMetrics} of regions belonging to the table<a name="line.1005"></a>
-<span class="sourceLineNo">1006</span>   * @return region metrics map of all regions of a table hosted on a region server<a name="line.1006"></a>
-<span class="sourceLineNo">1007</span>   * @throws IOException if a remote or network exception occurs<a name="line.1007"></a>
-<span class="sourceLineNo">1008</span>   */<a name="line.1008"></a>
-<span class="sourceLineNo">1009</span>  List&lt;RegionMetrics&gt; getRegionMetrics(ServerName serverName,<a name="line.1009"></a>
-<span class="sourceLineNo">1010</span>    TableName tableName) throws IOException;<a name="line.1010"></a>
-<span class="sourceLineNo">1011</span><a name="line.1011"></a>
-<span class="sourceLineNo">1012</span>  /**<a name="line.1012"></a>
-<span class="sourceLineNo">1013</span>   * @return Configuration used by the instance.<a name="line.1013"></a>
-<span class="sourceLineNo">1014</span>   */<a name="line.1014"></a>
-<span class="sourceLineNo">1015</span>  Configuration getConfiguration();<a name="line.1015"></a>
-<span class="sourceLineNo">1016</span><a name="line.1016"></a>
-<span class="sourceLineNo">1017</span>  /**<a name="line.1017"></a>
-<span class="sourceLineNo">1018</span>   * Create a new namespace. Blocks until namespace has been successfully created or an exception is<a name="line.1018"></a>
-<span class="sourceLineNo">1019</span>   * thrown.<a name="line.1019"></a>
-<span class="sourceLineNo">1020</span>   * @param descriptor descriptor which describes the new namespace.<a name="line.1020"></a>
-<span class="sourceLineNo">1021</span>   */<a name="line.1021"></a>
-<span class="sourceLineNo">1022</span>  default void createNamespace(NamespaceDescriptor descriptor) throws IOException {<a name="line.1022"></a>
-<span class="sourceLineNo">1023</span>    get(createNamespaceAsync(descriptor), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.1023"></a>
-<span class="sourceLineNo">1024</span>  }<a name="line.1024"></a>
-<span class="sourceLineNo">1025</span><a name="line.1025"></a>
-<span class="sourceLineNo">1026</span>  /**<a name="line.1026"></a>
-<span class="sourceLineNo">1027</span>   * Create a new namespace.<a name="line.1027"></a>
-<span class="sourceLineNo">1028</span>   * @param descriptor descriptor which describes the new namespace<a name="line.1028"></a>
-<span class="sourceLineNo">1029</span>   * @return the result of the async create namespace operation. Use Future.get(long, TimeUnit) to<a name="line.1029"></a>
-<span class="sourceLineNo">1030</span>   *         wait on the operation to complete.<a name="line.1030"></a>
-<span class="sourceLineNo">1031</span>   */<a name="line.1031"></a>
-<span class="sourceLineNo">1032</span>  Future&lt;Void&gt; createNamespaceAsync(NamespaceDescriptor descriptor) throws IOException;<a name="line.1032"></a>
-<span class="sourceLineNo">1033</span><a name="line.1033"></a>
-<span class="sourceLineNo">1034</span>  /**<a name="line.1034"></a>
-<span class="sourceLineNo">1035</span>   * Modify an existing namespace. Blocks until namespace has been successfully modified or an<a name="line.1035"></a>
-<span class="sourceLineNo">1036</span>   * exception is thrown.<a name="line.1036"></a>
-<span class="sourceLineNo">1037</span>   * @param descriptor descriptor which describes the new namespace<a name="line.1037"></a>
-<span class="sourceLineNo">1038</span>   */<a name="line.1038"></a>
-<span class="sourceLineNo">1039</span>  default void modifyNamespace(NamespaceDescriptor descriptor) throws IOException {<a name="line.1039"></a>
-<span class="sourceLineNo">1040</span>    get(modifyNamespaceAsync(descriptor), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.1040"></a>
-<span class="sourceLineNo">1041</span>  }<a name="line.1041"></a>
-<span class="sourceLineNo">1042</span><a name="line.1042"></a>
-<span class="sourceLineNo">1043</span>  /**<a name="line.1043"></a>
-<span class="sourceLineNo">1044</span>   * Modify an existing namespace.<a name="line.1044"></a>
-<span class="sourceLineNo">1045</span>   * @param descriptor descriptor which describes the new namespace<a name="line.1045"></a>
-<span class="sourceLineNo">1046</span>   * @return the result of the async modify namespace operation. Use Future.get(long, TimeUnit) to<a name="line.1046"></a>
-<span class="sourceLineNo">1047</span>   *         wait on the operation to complete.<a name="line.1047"></a>
-<span class="sourceLineNo">1048</span>   */<a name="line.1048"></a>
-<span class="sourceLineNo">1049</span>  Future&lt;Void&gt; modifyNamespaceAsync(NamespaceDescriptor descriptor) throws IOException;<a name="line.1049"></a>
-<span class="sourceLineNo">1050</span><a name="line.1050"></a>
-<span class="sourceLineNo">1051</span>  /**<a name="line.1051"></a>
-<span class="sourceLineNo">1052</span>   * Delete an existing namespace. Only empty namespaces (no tables) can be removed. Blocks until<a name="line.1052"></a>
-<span class="sourceLineNo">1053</span>   * namespace has been successfully deleted or an exception is thrown.<a name="line.1053"></a>
-<span class="sourceLineNo">1054</span>   * @param name namespace name<a name="line.1054"></a>
-<span class="sourceLineNo">1055</span>   */<a name="line.1055"></a>
-<span class="sourceLineNo">1056</span>  default void deleteNamespace(String name) throws IOException {<a name="line.1056"></a>
-<span class="sourceLineNo">1057</span>    get(deleteNamespaceAsync(name), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.1057"></a>
-<span class="sourceLineNo">1058</span>  }<a name="line.1058"></a>
-<span class="sourceLineNo">1059</span><a name="line.1059"></a>
-<span class="sourceLineNo">1060</span>  /**<a name="line.1060"></a>
-<span class="sourceLineNo">1061</span>   * Delete an existing namespace. Only empty namespaces (no tables) can be removed.<a name="line.1061"></a>
-<span class="sourceLineNo">1062</span>   * @param name namespace name<a name="line.1062"></a>
-<span class="sourceLineNo">1063</span>   * @return the result of the async delete namespace operation. Use Future.get(long, TimeUnit) to<a name="line.1063"></a>
-<span class="sourceLineNo">1064</span>   *         wait on the operation to complete.<a name="line.1064"></a>
-<span class="sourceLineNo">1065</span>   */<a name="line.1065"></a>
-<span class="sourceLineNo">1066</span>  Future&lt;Void&gt; deleteNamespaceAsync(String name) throws IOException;<a name="line.1066"></a>
-<span class="sourceLineNo">1067</span><a name="line.1067"></a>
-<span class="sourceLineNo">1068</span>  /**<a name="line.1068"></a>
-<span class="sourceLineNo">1069</span>   * Get a namespace descriptor by name.<a name="line.1069"></a>
-<span class="sourceLineNo">1070</span>   * @param name name of namespace descriptor<a name="line.1070"></a>
-<span class="sourceLineNo">1071</span>   * @return A descriptor<a name="line.1071"></a>
-<span class="sourceLineNo">1072</span>   * @throws org.apache.hadoop.hbase.NamespaceNotFoundException<a name="line.1072"></a>
-<span class="sourceLineNo">1073</span>   * @throws IOException if a remote or network exception occurs<a name="line.1073"></a>
-<span class="sourceLineNo">1074</span>   */<a name="line.1074"></a>
-<span class="sourceLineNo">1075</span>  NamespaceDescriptor getNamespaceDescriptor(String name)<a name="line.1075"></a>
-<span class="sourceLineNo">1076</span>      throws NamespaceNotFoundException, IOException;<a name="line.1076"></a>
-<span class="sourceLineNo">1077</span><a name="line.1077"></a>
-<span class="sourceLineNo">1078</span>  /**<a name="line.1078"></a>
-<span class="sourceLineNo">1079</span>   * List available namespace descriptors.<a name="line.1079"></a>
-<span class="sourceLineNo">1080</span>   * @return List of descriptors<a name="line.1080"></a>
-<span class="sourceLineNo">1081</span>   */<a name="line.1081"></a>
-<span class="sourceLineNo">1082</span>  NamespaceDescriptor[] listNamespaceDescriptors() throws IOException;<a name="line.1082"></a>
-<span class="sourceLineNo">1083</span><a name="line.1083"></a>
-<span class="sourceLineNo">1084</span>  /**<a name="line.1084"></a>
-<span class="sourceLineNo">1085</span>   * Get list of table descriptors by namespace.<a name="line.1085"></a>
-<span class="sourceLineNo">1086</span>   * @param name namespace name<a name="line.1086"></a>
-<span class="sourceLineNo">1087</span>   * @return returns a list of TableDescriptors<a name="line.1087"></a>
-<span class="sourceLineNo">1088</span>   */<a name="line.1088"></a>
-<span class="sourceLineNo">1089</span>  List&lt;TableDescriptor&gt; listTableDescriptorsByNamespace(byte[] name) throws IOException;<a name="line.1089"></a>
-<span class="sourceLineNo">1090</span><a name="line.1090"></a>
-<span class="sourceLineNo">1091</span>  /**<a name="line.1091"></a>
-<span class="sourceLineNo">1092</span>   * Get list of table names by namespace.<a name="line.1092"></a>
-<span class="sourceLineNo">1093</span>   * @param name namespace name<a name="line.1093"></a>
-<span class="sourceLineNo">1094</span>   * @return The list of table names in the namespace<a name="line.1094"></a>
-<span class="sourceLineNo">1095</span>   */<a name="line.1095"></a>
-<span class="sourceLineNo">1096</span>  TableName[] listTableNamesByNamespace(String name) throws IOException;<a name="line.1096"></a>
-<span class="sourceLineNo">1097</span><a name="line.1097"></a>
-<span class="sourceLineNo">1098</span>  /**<a name="line.1098"></a>
-<span class="sourceLineNo">1099</span>   * Get the regions of a given table.<a name="line.1099"></a>
-<span class="sourceLineNo">1100</span>   *<a name="line.1100"></a>
-<span class="sourceLineNo">1101</span>   * @param tableName the name of the table<a name="line.1101"></a>
-<span class="sourceLineNo">1102</span>   * @return List of {@link RegionInfo}.<a name="line.1102"></a>
-<span class="sourceLineNo">1103</span>   */<a name="line.1103"></a>
-<span class="sourceLineNo">1104</span>  List&lt;RegionInfo&gt; getRegions(TableName tableName) throws IOException;<a name="line.1104"></a>
-<span class="sourceLineNo">1105</span><a name="line.1105"></a>
-<span class="sourceLineNo">1106</span>  @Override<a name="line.1106"></a>
-<span class="sourceLineNo">1107</span>  void close();<a name="line.1107"></a>
-<span class="sourceLineNo">1108</span><a name="line.1108"></a>
-<span class="sourceLineNo">1109</span>  /**<a name="line.1109"></a>
-<span class="sourceLineNo">1110</span>   * Get tableDescriptors.<a name="line.1110"></a>
-<span class="sourceLineNo">1111</span>   *<a name="line.1111"></a>
-<span class="sourceLineNo">1112</span>   * @param tableNames List of table names<a name="line.1112"></a>
-<span class="sourceLineNo">1113</span>   * @return returns a list of TableDescriptors<a name="line.1113"></a>
-<span class="sourceLineNo">1114</span>   * @throws IOException if a remote or network exception occurs<a name="line.1114"></a>
-<span class="sourceLineNo">1115</span>   */<a name="line.1115"></a>
-<span class="sourceLineNo">1116</span>  List&lt;TableDescriptor&gt; listTableDescriptors(List&lt;TableName&gt; tableNames)<a name="line.1116"></a>
-<span class="sourceLineNo">1117</span>    throws IOException;<a name="line.1117"></a>
-<span class="sourceLineNo">1118</span><a name="line.1118"></a>
-<span class="sourceLineNo">1119</span>  /**<a name="line.1119"></a>
-<span class="sourceLineNo">1120</span>   * Abort a procedure.<a name="line.1120"></a>
-<span class="sourceLineNo">1121</span>   * &lt;p/&gt;<a name="line.1121"></a>
-<span class="sourceLineNo">1122</span>   * Do not use. Usually it is ignored but if not, it can do more damage than good. See hbck2.<a name="line.1122"></a>
-<span class="sourceLineNo">1123</span>   * @param procId ID of the procedure to abort<a name="line.1123"></a>
-<span class="sourceLineNo">1124</span>   * @param mayInterruptIfRunning if the proc completed at least one step, should it be aborted?<a name="line.1124"></a>
-<span class="sourceLineNo">1125</span>   * @return &lt;code&gt;true&lt;/code&gt; if aborted, &lt;code&gt;false&lt;/code&gt; if procedure already completed or does<a name="line.1125"></a>
-<span class="sourceLineNo">1126</span>   *         not exist<a name="line.1126"></a>
-<span class="sourceLineNo">1127</span>   * @throws IOException<a name="line.1127"></a>
-<span class="sourceLineNo">1128</span>   * @deprecated Since 2.1.1 -- to be removed.<a name="line.1128"></a>
-<span class="sourceLineNo">1129</span>   */<a name="line.1129"></a>
-<span class="sourceLineNo">1130</span>  @Deprecated<a name="line.1130"></a>
-<span class="sourceLineNo">1131</span>  default boolean abortProcedure(long procId, boolean mayInterruptIfRunning) throws IOException {<a name="line.1131"></a>
-<span class="sourceLineNo">1132</span>    return get(abortProcedureAsync(procId, mayInterruptIfRunning), getSyncWaitTimeout(),<a name="line.1132"></a>
-<span class="sourceLineNo">1133</span>      TimeUnit.MILLISECONDS);<a name="line.1133"></a>
-<span class="sourceLineNo">1134</span>  }<a name="line.1134"></a>
-<span class="sourceLineNo">1135</span><a name="line.1135"></a>
-<span class="sourceLineNo">1136</span>  /**<a name="line.1136"></a>
-<span class="sourceLineNo">1137</span>   * Abort a procedure but does not block and wait for completion.<a name="line.1137"></a>
-<span class="sourceLineNo">1138</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.1138"></a>
-<span class="sourceLineNo">1139</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.1139"></a>
-<span class="sourceLineNo">1140</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.1140"></a>
-<span class="sourceLineNo">1141</span>   * operation to complete.<a name="line.1141"></a>
-<span class="sourceLineNo">1142</span>   * Do not use. Usually it is ignored but if not, it can do more damage than good. See hbck2.<a name="line.1142"></a>
-<span class="sourceLineNo">1143</span>   *<a name="line.1143"></a>
-<span class="sourceLineNo">1144</span>   * @param procId ID of the procedure to abort<a name="line.1144"></a>
-<span class="sourceLineNo">1145</span>   * @param mayInterruptIfRunning if the proc completed at least one step, should it be aborted?<a name="line.1145"></a>
-<span class="sourceLineNo">1146</span>   * @return &lt;code&gt;true&lt;/code&gt; if aborted, &lt;code&gt;false&lt;/code&gt; if procedure already completed or does not exist<a name="line.1146"></a>
-<span class="sourceLineNo">1147</span>   * @throws IOException<a name="line.1147"></a>
-<span class="sourceLineNo">1148</span>   * @deprecated Since 2.1.1 -- to be removed.<a name="line.1148"></a>
-<span class="sourceLineNo">1149</span>   */<a name="line.1149"></a>
-<span class="sourceLineNo">1150</span>  @Deprecated<a name="line.1150"></a>
-<span class="sourceLineNo">1151</span>  Future&lt;Boolean&gt; abortProcedureAsync(long procId, boolean mayInterruptIfRunning)<a name="line.1151"></a>
-<span class="sourceLineNo">1152</span>      throws IOException;<a name="line.1152"></a>
-<span class="sourceLineNo">1153</span><a name="line.1153"></a>
-<span class="sourceLineNo">1154</span>  /**<a name="line.1154"></a>
-<span class="sourceLineNo">1155</span>   * Get procedures.<a name="line.1155"></a>
-<span class="sourceLineNo">1156</span>   * @return procedure list in JSON<a name="line.1156"></a>
-<span class="sourceLineNo">1157</span>   * @throws IOException<a name="line.1157"></a>
-<span class="sourceLineNo">1158</span>   */<a name="line.1158"></a>
-<span class="sourceLineNo">1159</span>  String getProcedures() throws IOException;<a name="line.1159"></a>
-<span class="sourceLineNo">1160</span><a name="line.1160"></a>
-<span class="sourceLineNo">1161</span>  /**<a name="line.1161"></a>
-<span class="sourceLineNo">1162</span>   * Get locks.<a name="line.1162"></a>
-<span class="sourceLineNo">1163</span>   * @return lock list in JSON<a name="line.1163"></a>
-<span class="sourceLineNo">1164</span>   * @throws IOException if a remote or network exception occurs<a name="line.1164"></a>
-<span class="sourceLineNo">1165</span>   */<a name="line.1165"></a>
-<span class="sourceLineNo">1166</span>  String getLocks() throws IOException;<a name="line.1166"></a>
-<span class="sourceLineNo">1167</span><a name="line.1167"></a>
-<span class="sourceLineNo">1168</span>  /**<a name="line.1168"></a>
-<span class="sourceLineNo">1169</span>   * Roll the log writer. I.e. for filesystem based write ahead logs, start writing to a new file.<a name="line.1169"></a>
-<span class="sourceLineNo">1170</span>   *<a name="line.1170"></a>
-<span class="sourceLineNo">1171</span>   * Note that the actual rolling of the log writer is asynchronous and may not be complete when<a name="line.1171"></a>
-<span class="sourceLineNo">1172</span>   * this method returns. As a side effect of this call, the named region server may schedule<a name="line.1172"></a>
-<span class="sourceLineNo">1173</span>   * store flushes at the request of the wal.<a name="line.1173"></a>
-<span class="sourceLineNo">1174</span>   *<a name="line.1174"></a>
-<span class="sourceLineNo">1175</span>   * @param serverName The servername of the regionserver.<a name="line.1175"></a>
-<span class="sourceLineNo">1176</span>   * @throws IOException if a remote or network exception occurs<a name="line.1176"></a>
-<span class="sourceLineNo">1177</span>   * @throws org.apache.hadoop.hbase.regionserver.wal.FailedLogCloseException<a name="line.1177"></a>
-<span class="sourceLineNo">1178</span>   */<a name="line.1178"></a>
-<span class="sourceLineNo">1179</span>  void rollWALWriter(ServerName serverName) throws IOException, FailedLogCloseException;<a name="line.1179"></a>
-<span class="sourceLineNo">1180</span><a name="line.1180"></a>
-<span class="sourceLineNo">1181</span>  /**<a name="line.1181"></a>
-<span class="sourceLineNo">1182</span>   * Helper that delegates to getClusterMetrics().getMasterCoprocessorNames().<a name="line.1182"></a>
-<span class="sourceLineNo">1183</span>   * @return an array of master coprocessors<a name="line.1183"></a>
-<span class="sourceLineNo">1184</span>   * @see org.apache.hadoop.hbase.ClusterMetrics#getMasterCoprocessorNames()<a name="line.1184"></a>
-<span class="sourceLineNo">1185</span>   */<a name="line.1185"></a>
-<span class="sourceLineNo">1186</span>  default List&lt;String&gt; getMasterCoprocessorNames() throws IOException {<a name="line.1186"></a>
-<span class="sourceLineNo">1187</span>    return getClusterMetrics(EnumSet.of(Option.MASTER_COPROCESSORS))<a name="line.1187"></a>
-<span class="sourceLineNo">1188</span>      .getMasterCoprocessorNames();<a name="line.1188"></a>
-<span class="sourceLineNo">1189</span>  }<a name="line.1189"></a>
-<span class="sourceLineNo">1190</span><a name="line.1190"></a>
-<span class="sourceLineNo">1191</span>  /**<a name="line.1191"></a>
-<span class="sourceLineNo">1192</span>   * Get the current compaction state of a table. It could be in a major compaction, a minor<a name="line.1192"></a>
-<span class="sourceLineNo">1193</span>   * compaction, both, or none.<a name="line.1193"></a>
-<span class="sourceLineNo">1194</span>   *<a name="line.1194"></a>
-<span class="sourceLineNo">1195</span>   * @param tableName table to examine<a name="line.1195"></a>
-<span class="sourceLineNo">1196</span>   * @return the current compaction state<a name="line.1196"></a>
-<span class="sourceLineNo">1197</span>   * @throws IOException if a remote or network exception occurs<a name="line.1197"></a>
-<span class="sourceLineNo">1198</span>   */<a name="line.1198"></a>
-<span class="sourceLineNo">1199</span>  CompactionState getCompactionState(TableName tableName) throws IOException;<a name="line.1199"></a>
-<span class="sourceLineNo">1200</span><a name="line.1200"></a>
-<span class="sourceLineNo">1201</span>  /**<a name="line.1201"></a>
-<span class="sourceLineNo">1202</span>   * Get the current compaction state of a table. It could be in a compaction, or none.<a name="line.1202"></a>
-<span class="sourceLineNo">1203</span>   *<a name="line.1203"></a>
-<span class="sourceLineNo">1204</span>   * @param tableName table to examine<a name="line.1204"></a>
-<span class="sourceLineNo">1205</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.1205"></a>
-<span class="sourceLineNo">1206</span>   * @return the current compaction state<a name="line.1206"></a>
-<span class="sourceLineNo">1207</span>   * @throws IOException if a remote or network exception occurs<a name="line.1207"></a>
-<span class="sourceLineNo">1208</span>   */<a name="line.1208"></a>
-<span class="sourceLineNo">1209</span>  CompactionState getCompactionState(TableName tableName,<a name="line.1209"></a>
-<span class="sourceLineNo">1210</span>    CompactType compactType) throws IOException;<a name="line.1210"></a>
-<span class="sourceLineNo">1211</span><a name="line.1211"></a>
-<span class="sourceLineNo">1212</span>  /**<a name="line.1212"></a>
-<span class="sourceLineNo">1213</span>   * Get the current compaction state of region. It could be in a major compaction, a minor<a name="line.1213"></a>
-<span class="sourceLineNo">1214</span>   * compaction, both, or none.<a name="line.1214"></a>
-<span class="sourceLineNo">1215</span>   *<a name="line.1215"></a>
-<span class="sourceLineNo">1216</span>   * @param regionName region to examine<a name="line.1216"></a>
-<span class="sourceLineNo">1217</span>   * @return the current compaction state<a name="line.1217"></a>
-<span class="sourceLineNo">1218</span>   * @throws IOException if a remote or network exception occurs<a name="line.1218"></a>
-<span class="sourceLineNo">1219</span>   */<a name="line.1219"></a>
-<span class="sourceLineNo">1220</span>  CompactionState getCompactionStateForRegion(byte[] regionName) throws IOException;<a name="line.1220"></a>
-<span class="sourceLineNo">1221</span><a name="line.1221"></a>
-<span class="sourceLineNo">1222</span>  /**<a name="line.1222"></a>
-<span class="sourceLineNo">1223</span>   * Get the timestamp of the last major compaction for the passed table<a name="line.1223"></a>
-<span class="sourceLineNo">1224</span>   *<a name="line.1224"></a>
-<span class="sourceLineNo">1225</span>   * The timestamp of the oldest HFile resulting from a major compaction of that table,<a name="line.1225"></a>
-<span class="sourceLineNo">1226</span>   * or 0 if no such HFile could be found.<a name="line.1226"></a>
-<span class="sourceLineNo">1227</span>   *<a name="line.1227"></a>
-<span class="sourceLineNo">1228</span>   * @param tableName table to examine<a name="line.1228"></a>
-<span class="sourceLineNo">1229</span>   * @return the last major compaction timestamp or 0<a name="line.1229"></a>
-<span class="sourceLineNo">1230</span>   * @throws IOException if a remote or network exception occurs<a name="line.1230"></a>
-<span class="sourceLineNo">1231</span>   */<a name="line.1231"></a>
-<span class="sourceLineNo">1232</span>  long getLastMajorCompactionTimestamp(TableName tableName) throws IOException;<a name="line.1232"></a>
-<span class="sourceLineNo">1233</span><a name="line.1233"></a>
-<span class="sourceLineNo">1234</span>  /**<a name="line.1234"></a>
-<span class="sourceLineNo">1235</span>   * Get the timestamp of the last major compaction for the passed region.<a name="line.1235"></a>
-<span class="sourceLineNo">1236</span>   *<a name="line.1236"></a>
-<span class="sourceLineNo">1237</span>   * The timestamp of the oldest HFile resulting from a major compaction of that region,<a name="line.1237"></a>
-<span class="sourceLineNo">1238</span>   * or 0 if no such HFile could be found.<a name="line.1238"></a>
-<span class="sourceLineNo">1239</span>   *<a name="line.1239"></a>
-<span class="sourceLineNo">1240</span>   * @param regionName region to examine<a name="line.1240"></a>
-<span class="sourceLineNo">1241</span>   * @return the last major compaction timestamp or 0<a name="line.1241"></a>
-<span class="sourceLineNo">1242</span>   * @throws IOException if a remote or network exception occurs<a name="line.1242"></a>
-<span class="sourceLineNo">1243</span>   */<a name="line.1243"></a>
-<span class="sourceLineNo">1244</span>  long getLastMajorCompactionTimestampForRegion(byte[] regionName) throws IOException;<a name="line.1244"></a>
-<span class="sourceLineNo">1245</span><a name="line.1245"></a>
-<span class="sourceLineNo">1246</span>  /**<a name="line.1246"></a>
-<span class="sourceLineNo">1247</span>   * Take a snapshot for the given table. If the table is enabled, a FLUSH-type snapshot will be<a name="line.1247"></a>
-<span class="sourceLineNo">1248</span>   * taken. If the table is disabled, an offline snapshot is taken. Snapshots are considered unique<a name="line.1248"></a>
-<span class="sourceLineNo">1249</span>   * based on &lt;b&gt;the name of the snapshot&lt;/b&gt;. Attempts to take a snapshot with the same name (even<a name="line.1249"></a>
-<span class="sourceLineNo">1250</span>   * a different type or with different parameters) will fail with a<a name="line.1250"></a>
-<span class="sourceLineNo">1251</span>   * {@link org.apache.hadoop.hbase.snapshot.SnapshotCreationException} indicating the duplicate<a name="line.1251"></a>
-<span class="sourceLineNo">1252</span>   * naming. Snapshot names follow the same naming constraints as tables in HBase. See<a name="line.1252"></a>
-<span class="sourceLineNo">1253</span>   * {@link org.apache.hadoop.hbase.TableName#isLegalFullyQualifiedTableName(byte[])}.<a name="line.1253"></a>
-<span class="sourceLineNo">1254</span>   * @param snapshotName name of the snapshot to be created<a name="line.1254"></a>
-<span class="sourceLineNo">1255</span>   * @param tableName name of the table for which snapshot is created<a name="line.1255"></a>
-<span class="sourceLineNo">1256</span>   * @throws IOException if a remote or network exception occurs<a name="line.1256"></a>
-<span class="sourceLineNo">1257</span>   * @throws org.apache.hadoop.hbase.snapshot.SnapshotCreationException if snapshot creation failed<a name="line.1257"></a>
-<span class="sourceLineNo">1258</span>   * @throws IllegalArgumentException if the snapshot request is formatted incorrectly<a name="line.1258"></a>
-<span class="sourceLineNo">1259</span>   */<a name="line.1259"></a>
-<span class="sourceLineNo">1260</span>  default void snapshot(String snapshotName, TableName tableName)<a name="line.1260"></a>
-<span class="sourceLineNo">1261</span>      throws IOException, SnapshotCreationException, IllegalArgumentException {<a name="line.1261"></a>
-<span class="sourceLineNo">1262</span>    snapshot(snapshotName, tableName, SnapshotType.FLUSH);<a name="line.1262"></a>
-<span class="sourceLineNo">1263</span>  }<a name="line.1263"></a>
-<span class="sourceLineNo">1264</span><a name="line.1264"></a>
-<span class="sourceLineNo">1265</span>  /**<a name="line.1265"></a>
-<span class="sourceLineNo">1266</span>   * Create typed snapshot of the table. Snapshots are considered unique based on &lt;b&gt;the name of the<a name="line.1266"></a>
-<span class="sourceLineNo">1267</span>   * snapshot&lt;/b&gt;. Attempts to take a snapshot with the same name (even a different type or with<a name="line.1267"></a>
-<span class="sourceLineNo">1268</span>   * different parameters) will fail with a {@link SnapshotCreationException} indicating the<a name="line.1268"></a>
-<span class="sourceLineNo">1269</span>   * duplicate naming. Snapshot names follow the same naming constraints as tables in HBase. See<a name="line.1269"></a>
-<span class="sourceLineNo">1270</span>   * {@link org.apache.hadoop.hbase.TableName#isLegalFullyQualifiedTableName(byte[])}.<a name="line.1270"></a>
-<span class="sourceLineNo">1271</span>   * @param snapshotName name to give the snapshot on the filesystem. Must be unique from all other<a name="line.1271"></a>
-<span class="sourceLineNo">1272</span>   *          snapshots stored on the cluster<a name="line.1272"></a>
-<span class="sourceLineNo">1273</span>   * @param tableName name of the table to snapshot<a name="line.1273"></a>
-<span class="sourceLineNo">1274</span>   * @param type type of snapshot to take<a name="line.1274"></a>
-<span class="sourceLineNo">1275</span>   * @throws IOException we fail to reach the master<a name="line.1275"></a>
-<span class="sourceLineNo">1276</span>   * @throws SnapshotCreationException if snapshot creation failed<a name="line.1276"></a>
-<span class="sourceLineNo">1277</span>   * @throws IllegalArgumentException if the snapshot request is formatted incorrectly<a name="line.1277"></a>
-<span class="sourceLineNo">1278</span>   */<a name="line.1278"></a>
-<span class="sourceLineNo">1279</span>  default void snapshot(String snapshotName, TableName tableName, SnapshotType type)<a name="line.1279"></a>
-<span class="sourceLineNo">1280</span>      throws IOException, SnapshotCreationException, IllegalArgumentException {<a name="line.1280"></a>
-<span class="sourceLineNo">1281</span>    snapshot(new SnapshotDescription(snapshotName, tableName, type));<a name="line.1281"></a>
-<span class="sourceLineNo">1282</span>  }<a name="line.1282"></a>
-<span class="sourceLineNo">1283</span><a name="line.1283"></a>
-<span class="sourceLineNo">1284</span>  /**<a name="line.1284"></a>
-<span class="sourceLineNo">1285</span>   * Take a snapshot and wait for the server to complete that snapshot (blocking). Only a single<a name="line.1285"></a>
-<span class="sourceLineNo">1286</span>   * snapshot should be taken at a time for an instance of HBase, or results may be undefined (you<a name="line.1286"></a>
-<span class="sourceLineNo">1287</span>   * can tell multiple HBase clusters to snapshot at the same time, but only one at a time for a<a name="line.1287"></a>
-<span class="sourceLineNo">1288</span>   * single cluster). Snapshots are considered unique based on &lt;b&gt;the name of the snapshot&lt;/b&gt;.<a name="line.1288"></a>
-<span class="sourceLineNo">1289</span>   * Attempts to take a snapshot with the same name (even a different type or with different<a name="line.1289"></a>
-<span class="sourceLineNo">1290</span>   * parameters) will fail with a {@link SnapshotCreationException} indicating the duplicate naming.<a name="line.1290"></a>
-<span class="sourceLineNo">1291</span>   * Snapshot names follow the same naming constraints as tables in HBase. See<a name="line.1291"></a>
-<span class="sourceLineNo">1292</span>   * {@link org.apache.hadoop.hbase.TableName#isLegalFullyQualifiedTableName(byte[])}. You should<a name="line.1292"></a>
-<span class="sourceLineNo">1293</span>   * probably use {@link #snapshot(String, org.apache.hadoop.hbase.TableName)} unless you are sure<a name="line.1293"></a>
-<span class="sourceLineNo">1294</span>   * about the type of snapshot that you want to take.<a name="line.1294"></a>
-<span class="sourceLineNo">1295</span>   * @param snapshot snapshot to take<a name="line.1295"></a>
-<span class="sourceLineNo">1296</span>   * @throws IOException or we lose contact with the master.<a name="line.1296"></a>
-<span class="sourceLineNo">1297</span>   * @throws SnapshotCreationException if snapshot failed to be taken<a name="line.1297"></a>
-<span class="sourceLineNo">1298</span>   * @throws IllegalArgumentException if the snapshot request is formatted incorrectly<a name="line.1298"></a>
-<span class="sourceLineNo">1299</span>   */<a name="line.1299"></a>
-<span class="sourceLineNo">1300</span>  void snapshot(SnapshotDescription snapshot)<a name="line.1300"></a>
-<span class="sourceLineNo">1301</span>      throws IOException, SnapshotCreationException, IllegalArgumentException;<a name="line.1301"></a>
-<span class="sourceLineNo">1302</span><a name="line.1302"></a>
-<span class="sourceLineNo">1303</span>  /**<a name="line.1303"></a>
-<span class="sourceLineNo">1304</span>   * Take a snapshot without waiting for the server to complete that snapshot (asynchronous) Only a<a name="line.1304"></a>
-<span class="sourceLineNo">1305</span>   * single snapshot should be taken at a time, or results may be undefined.<a name="line.1305"></a>
-<span class="sourceLineNo">1306</span>   *<a name="line.1306"></a>
-<span class="sourceLineNo">1307</span>   * @param snapshot snapshot to take<a name="line.1307"></a>
-<span class="sourceLineNo">1308</span>   * @throws IOException if the snapshot did not succeed or we lose contact with the master.<a name="line.1308"></a>
-<span class="sourceLineNo">1309</span>   * @throws SnapshotCreationException if snapshot creation failed<a name="line.1309"></a>
-<span class="sourceLineNo">1310</span>   * @throws IllegalArgumentException if the snapshot request is formatted incorrectly<a name="line.1310"></a>
-<span class="sourceLineNo">1311</span>   */<a name="line.1311"></a>
-<span class="sourceLineNo">1312</span>  Future&lt;Void&gt; snapshotAsync(SnapshotDescription snapshot)<a name="line.1312"></a>
-<span class="sourceLineNo">1313</span>      throws IOException, SnapshotCreationException;<a name="line.1313"></a>
-<span class="sourceLineNo">1314</span><a name="line.1314"></a>
-<span class="sourceLineNo">1315</span>  /**<a name="line.1315"></a>
-<span class="sourceLineNo">1316</span>   * Check the current state of the passed snapshot. There are three possible states: &lt;ol&gt;<a name="line.1316"></a>
-<span class="sourceLineNo">1317</span>   * &lt;li&gt;running - returns &lt;tt&gt;false&lt;/tt&gt;&lt;/li&gt; &lt;li&gt;finished - returns &lt;tt&gt;true&lt;/tt&gt;&lt;/li&gt;<a name="line.1317"></a>
-<span class="sourceLineNo">1318</span>   * &lt;li&gt;finished with error - throws the exception that caused the snapshot to fail&lt;/li&gt; &lt;/ol&gt; The<a name="line.1318"></a>
-<span class="sourceLineNo">1319</span>   * cluster only knows about the most recent snapshot. Therefore, if another snapshot has been<a name="line.1319"></a>
-<span class="sourceLineNo">1320</span>   * run/started since the snapshot you are checking, you will receive an {@link<a name="line.1320"></a>
-<span class="sourceLineNo">1321</span>   * org.apache.hadoop.hbase.snapshot.UnknownSnapshotException}.<a name="line.1321"></a>
-<span class="sourceLineNo">1322</span>   *<a name="line.1322"></a>
-<span class="sourceLineNo">1323</span>   * @param snapshot description of the snapshot to check<a name="line.1323"></a>
-<span class="sourceLineNo">1324</span>   * @return &lt;tt&gt;true&lt;/tt&gt; if the snapshot is completed, &lt;tt&gt;false&lt;/tt&gt; if the snapshot is still<a name="line.1324"></a>
-<span class="sourceLineNo">1325</span>   * running<a name="line.1325"></a>
-<span class="sourceLineNo">1326</span>   * @throws IOException if we have a network issue<a name="line.1326"></a>
-<span class="sourceLineNo">1327</span>   * @throws org.apache.hadoop.hbase.snapshot.HBaseSnapshotException if the snapshot failed<a name="line.1327"></a>
-<span class="sourceLineNo">1328</span>   * @throws org.apache.hadoop.hbase.snapshot.UnknownSnapshotException if the requested snapshot is<a name="line.1328"></a>
-<span class="sourceLineNo">1329</span>   * unknown<a name="line.1329"></a>
-<span class="sourceLineNo">1330</span>   */<a name="line.1330"></a>
-<span class="sourceLineNo">1331</span>  boolean isSnapshotFinished(SnapshotDescription snapshot)<a name="line.1331"></a>
-<span class="sourceLineNo">1332</span>      throws IOException, HBaseSnapshotException, UnknownSnapshotException;<a name="line.1332"></a>
-<span class="sourceLineNo">1333</span><a name="line.1333"></a>
-<span class="sourceLineNo">1334</span>  /**<a name="line.1334"></a>
-<span class="sourceLineNo">1335</span>   * Restore the specified snapshot on the original table. (The table must be disabled) If the<a name="line.1335"></a>
-<span class="sourceLineNo">1336</span>   * "hbase.snapshot.restore.take.failsafe.snapshot" configuration property is set to<a name="line.1336"></a>
-<span class="sourceLineNo">1337</span>   * &lt;code&gt;true&lt;/code&gt;, a snapshot of the current table is taken before executing the restore<a name="line.1337"></a>
-<span class="sourceLineNo">1338</span>   * operation. In case of restore failure, the failsafe snapshot will be restored. If the restore<a name="line.1338"></a>
-<span class="sourceLineNo">1339</span>   * completes without problem the failsafe snapshot is deleted.<a name="line.1339"></a>
-<span class="sourceLineNo">1340</span>   * @param snapshotName name of the snapshot to restore<a name="line.1340"></a>
-<span class="sourceLineNo">1341</span>   * @throws IOException if a remote or network exception occurs<a name="line.1341"></a>
-<span class="sourceLineNo">1342</span>   * @throws RestoreSnapshotException if snapshot failed to be restored<a name="line.1342"></a>
-<span class="sourceLineNo">1343</span>   * @throws IllegalArgumentException if the restore request is formatted incorrectly<a name="line.1343"></a>
-<span class="sourceLineNo">1344</span>   */<a name="line.1344"></a>
-<span class="sourceLineNo">1345</span>  void restoreSnapshot(String snapshotName) throws IOException, RestoreSnapshotException;<a name="line.1345"></a>
-<span class="sourceLineNo">1346</span><a name="line.1346"></a>
-<span class="sourceLineNo">1347</span>  /**<a name="line.1347"></a>
-<span class="sourceLineNo">1348</span>   * Restore the specified snapshot on the original table. (The table must be disabled) If<a name="line.1348"></a>
-<span class="sourceLineNo">1349</span>   * 'takeFailSafeSnapshot' is set to &lt;code&gt;true&lt;/code&gt;, a snapshot of the current table is taken<a name="line.1349"></a>
-<span class="sourceLineNo">1350</span>   * before executing the restore operation. In case of restore failure, the failsafe snapshot will<a name="line.1350"></a>
-<span class="sourceLineNo">1351</span>   * be restored. If the restore completes without problem the failsafe snapshot is deleted. The<a name="line.1351"></a>
-<span class="sourceLineNo">1352</span>   * failsafe snapshot name is configurable by using the property<a name="line.1352"></a>
-<span class="sourceLineNo">1353</span>   * "hbase.snapshot.restore.failsafe.name".<a name="line.1353"></a>
-<span class="sourceLineNo">1354</span>   * @param snapshotName name of the snapshot to restore<a name="line.1354"></a>
-<span class="sourceLineNo">1355</span>   * @param takeFailSafeSnapshot &lt;code&gt;true&lt;/code&gt; if the failsafe snapshot should be taken<a name="line.1355"></a>
-<span class="sourceLineNo">1356</span>   * @throws IOException if a remote or network exception occurs<a name="line.1356"></a>
-<span class="sourceLineNo">1357</span>   * @throws RestoreSnapshotException if snapshot failed to be restored<a name="line.1357"></a>
-<span class="sourceLineNo">1358</span>   * @throws IllegalArgumentException if the restore request is formatted incorrectly<a name="line.1358"></a>
-<span class="sourceLineNo">1359</span>   */<a name="line.1359"></a>
-<span class="sourceLineNo">1360</span>  default void restoreSnapshot(String snapshotName, boolean takeFailSafeSnapshot)<a name="line.1360"></a>
-<span class="sourceLineNo">1361</span>      throws IOException, RestoreSnapshotException {<a name="line.1361"></a>
-<span class="sourceLineNo">1362</span>    restoreSnapshot(snapshotName, takeFailSafeSnapshot, false);<a name="line.1362"></a>
-<span class="sourceLineNo">1363</span>  }<a name="line.1363"></a>
-<span class="sourceLineNo">1364</span><a name="line.1364"></a>
-<span class="sourceLineNo">1365</span>  /**<a name="line.1365"></a>
-<span class="sourceLineNo">1366</span>   * Restore the specified snapshot on the original table. (The table must be disabled) If<a name="line.1366"></a>
-<span class="sourceLineNo">1367</span>   * 'takeFailSafeSnapshot' is set to &lt;code&gt;true&lt;/code&gt;, a snapshot of the current table is taken<a name="line.1367"></a>
-<span class="sourceLineNo">1368</span>   * before executing the restore operation. In case of restore failure, the failsafe snapshot will<a name="line.1368"></a>
-<span class="sourceLineNo">1369</span>   * be restored. If the restore completes without problem the failsafe snapshot is deleted. The<a name="line.1369"></a>
-<span class="sourceLineNo">1370</span>   * failsafe snapshot name is configurable by using the property<a name="line.1370"></a>
-<span class="sourceLineNo">1371</span>   * "hbase.snapshot.restore.failsafe.name".<a name="line.1371"></a>
-<span class="sourceLineNo">1372</span>   * @param snapshotName name of the snapshot to restore<a name="line.1372"></a>
-<span class="sourceLineNo">1373</span>   * @param takeFailSafeSnapshot &lt;code&gt;true&lt;/code&gt; if the failsafe snapshot should be taken<a name="line.1373"></a>
-<span class="sourceLineNo">1374</span>   * @param restoreAcl &lt;code&gt;true&lt;/code&gt; to restore acl of snapshot<a name="line.1374"></a>
-<span class="sourceLineNo">1375</span>   * @throws IOException if a remote or network exception occurs<a name="line.1375"></a>
-<span class="sourceLineNo">1376</span>   * @throws RestoreSnapshotException if snapshot failed to be restored<a name="line.1376"></a>
-<span class="sourceLineNo">1377</span>   * @throws IllegalArgumentException if the restore request is formatted incorrectly<a name="line.1377"></a>
-<span class="sourceLineNo">1378</span>   */<a name="line.1378"></a>
-<span class="sourceLineNo">1379</span>  void restoreSnapshot(String snapshotName, boolean takeFailSafeSnapshot, boolean restoreAcl)<a name="line.1379"></a>
-<span class="sourceLineNo">1380</span>      throws IOException, RestoreSnapshotException;<a name="line.1380"></a>
-<span class="sourceLineNo">1381</span><a name="line.1381"></a>
-<span class="sourceLineNo">1382</span>  /**<a name="line.1382"></a>
-<span class="sourceLineNo">1383</span>   * Create a new table by cloning the snapshot content.<a name="line.1383"></a>
-<span class="sourceLineNo">1384</span>   * @param snapshotName name of the snapshot to be cloned<a name="line.1384"></a>
-<span class="sourceLineNo">1385</span>   * @param tableName name of the table where the snapshot will be restored<a name="line.1385"></a>
-<span class="sourceLineNo">1386</span>   * @throws IOException if a remote or network exception occurs<a name="line.1386"></a>
-<span class="sourceLineNo">1387</span>   * @throws TableExistsException if table to be created already exists<a name="line.1387"></a>
-<span class="sourceLineNo">1388</span>   * @throws RestoreSnapshotException if snapshot failed to be cloned<a name="line.1388"></a>
-<span class="sourceLineNo">1389</span>   * @throws IllegalArgumentException if the specified table has not a valid name<a name="line.1389"></a>
-<span class="sourceLineNo">1390</span>   */<a name="line.1390"></a>
-<span class="sourceLineNo">1391</span>  default void cloneSnapshot(String snapshotName, TableName tableName)<a name="line.1391"></a>
-<span class="sourceLineNo">1392</span>      throws IOException, TableExistsException, RestoreSnapshotException {<a name="line.1392"></a>
-<span class="sourceLineNo">1393</span>    cloneSnapshot(snapshotName, tableName, false);<a name="line.1393"></a>
-<span class="sourceLineNo">1394</span>  }<a name="line.1394"></a>
-<span class="sourceLineNo">1395</span><a name="line.1395"></a>
-<span class="sourceLineNo">1396</span>  /**<a name="line.1396"></a>
-<span class="sourceLineNo">1397</span>   * Create a new table by cloning the snapshot content.<a name="line.1397"></a>
-<span class="sourceLineNo">1398</span>   * @param snapshotName name of the snapshot to be cloned<a name="line.1398"></a>
-<span class="sourceLineNo">1399</span>   * @param tableName name of the table where the snapshot will be restored<a name="line.1399"></a>
-<span class="sourceLineNo">1400</span>   * @param restoreAcl &lt;code&gt;true&lt;/code&gt; to clone acl into newly created table<a name="line.1400"></a>
-<span class="sourceLineNo">1401</span>   * @throws IOException if a remote or network exception occurs<a name="line.1401"></a>
-<span class="sourceLineNo">1402</span>   * @throws TableExistsException if table to be created already exists<a name="line.1402"></a>
-<span class="sourceLineNo">1403</span>   * @throws RestoreSnapshotException if snapshot failed to be cloned<a name="line.1403"></a>
-<span class="sourceLineNo">1404</span>   * @throws IllegalArgumentException if the specified table has not a valid name<a name="line.1404"></a>
-<span class="sourceLineNo">1405</span>   */<a name="line.1405"></a>
-<span class="sourceLineNo">1406</span>  default void cloneSnapshot(String snapshotName, TableName tableName, boolean restoreAcl)<a name="line.1406"></a>
-<span class="sourceLineNo">1407</span>      throws IOException, TableExistsException, RestoreSnapshotException {<a name="line.1407"></a>
-<span class="sourceLineNo">1408</span>    get(cloneSnapshotAsync(snapshotName, tableName, restoreAcl), getSyncWaitTimeout(),<a name="line.1408"></a>
-<span class="sourceLineNo">1409</span>      TimeUnit.MILLISECONDS);<a name="line.1409"></a>
-<span class="sourceLineNo">1410</span>  }<a name="line.1410"></a>
-<span class="sourceLineNo">1411</span><a name="line.1411"></a>
-<span class="sourceLineNo">1412</span>  /**<a name="line.1412"></a>
-<span class="sourceLineNo">1413</span>   * Create a new table by cloning the snapshot content, but does not block and wait for it to be<a name="line.1413"></a>
-<span class="sourceLineNo">1414</span>   * completely cloned. You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.1414"></a>
-<span class="sourceLineNo">1415</span>   * It may throw ExecutionException if there was an error while executing the operation or<a name="line.1415"></a>
-<span class="sourceLineNo">1416</span>   * TimeoutException in case the wait timeout was not long enough to allow the operation to<a name="line.1416"></a>
-<span class="sourceLineNo">1417</span>   * complete.<a name="line.1417"></a>
-<span class="sourceLineNo">1418</span>   * @param snapshotName name of the snapshot to be cloned<a name="line.1418"></a>
-<span class="sourceLineNo">1419</span>   * @param tableName name of the table where the snapshot will be restored<a name="line.1419"></a>
-<span class="sourceLineNo">1420</span>   * @throws IOException if a remote or network exception occurs<a name="line.1420"></a>
-<span class="sourceLineNo">1421</span>   * @throws TableExistsException if table to be cloned already exists<a name="line.1421"></a>
-<span class="sourceLineNo">1422</span>   * @return the result of the async clone snapshot. You can use Future.get(long, TimeUnit) to wait<a name="line.1422"></a>
-<span class="sourceLineNo">1423</span>   *         on the operation to complete.<a name="line.1423"></a>
-<span class="sourceLineNo">1424</span>   */<a name="line.1424"></a>
-<span class="sourceLineNo">1425</span>  default Future&lt;Void&gt; cloneSnapshotAsync(String snapshotName, TableName tableName)<a name="line.1425"></a>
-<span class="sourceLineNo">1426</span>      throws IOException, TableExistsException {<a name="line.1426"></a>
-<span class="sourceLineNo">1427</span>    return cloneSnapshotAsync(snapshotName, tableName, false);<a name="line.1427"></a>
-<span class="sourceLineNo">1428</span>  }<a name="line.1428"></a>
-<span class="sourceLineNo">1429</span><a name="line.1429"></a>
-<span class="sourceLineNo">1430</span>  /**<a name="line.1430"></a>
-<span class="sourceLineNo">1431</span>   * Create a new table by cloning the snapshot content.<a name="line.1431"></a>
-<span class="sourceLineNo">1432</span>   * @param snapshotName name of the snapshot to be cloned<a name="line.1432"></a>
-<span class="sourceLineNo">1433</span>   * @param tableName name of the table where the snapshot will be restored<a name="line.1433"></a>
-<span class="sourceLineNo">1434</span>   * @param restoreAcl &lt;code&gt;true&lt;/code&gt; to clone acl into newly created table<a name="line.1434"></a>
-<span class="sourceLineNo">1435</span>   * @throws IOException if a remote or network exception occurs<a name="line.1435"></a>
-<span class="sourceLineNo">1436</span>   * @throws TableExistsException if table to be created already exists<a name="line.1436"></a>
-<span class="sourceLineNo">1437</span>   * @throws RestoreSnapshotException if snapshot failed to be cloned<a name="line.1437"></a>
-<span class="sourceLineNo">1438</span>   * @throws IllegalArgumentException if the specified table has not a valid name<a name="line.1438"></a>
-<span class="sourceLineNo">1439</span>   */<a name="line.1439"></a>
-<span class="sourceLineNo">1440</span>  Future&lt;Void&gt; cloneSnapshotAsync(String snapshotName, TableName tableName, boolean restoreAcl)<a name="line.1440"></a>
-<span class="sourceLineNo">1441</span>      throws IOException, TableExistsException, RestoreSnapshotException;<a name="line.1441"></a>
-<span class="sourceLineNo">1442</span><a name="line.1442"></a>
-<span class="sourceLineNo">1443</span>  /**<a name="line.1443"></a>
-<span class="sourceLineNo">1444</span>   * Execute a distributed procedure on a cluster.<a name="line.1444"></a>
-<span class="sourceLineNo">1445</span>   *<a name="line.1445"></a>
-<span class="sourceLineNo">1446</span>   * @param signature A distributed procedure is uniquely identified by its signature (default the<a name="line.1446"></a>
-<span class="sourceLineNo">1447</span>   * root ZK node name of the procedure).<a name="line.1447"></a>
-<span class="sourceLineNo">1448</span>   * @param instance The instance name of the procedure. For some procedures, this parameter is<a name="line.1448"></a>
-<span class="sourceLineNo">1449</span>   * optional.<a name="line.1449"></a>
-<span class="sourceLineNo">1450</span>   * @param props Property/Value pairs of properties passing to the procedure<a name="line.1450"></a>
-<span class="sourceLineNo">1451</span>   * @throws IOException<a name="line.1451"></a>
-<span class="sourceLineNo">1452</span>   */<a name="line.1452"></a>
-<span class="sourceLineNo">1453</span>  void execProcedure(String signature, String instance, Map&lt;String, String&gt; props)<a name="line.1453"></a>
-<span class="sourceLineNo">1454</span>      throws IOException;<a name="line.1454"></a>
-<span class="sourceLineNo">1455</span><a name="line.1455"></a>
-<span class="sourceLineNo">1456</span>  /**<a name="line.1456"></a>
-<span class="sourceLineNo">1457</span>   * Execute a distributed procedure on a cluster.<a name="line.1457"></a>
-<span class="sourceLineNo">1458</span>   *<a name="line.1458"></a>
-<span class="sourceLineNo">1459</span>   * @param signature A distributed procedure is uniquely identified by its signature (default the<a name="line.1459"></a>
-<span class="sourceLineNo">1460</span>   * root ZK node name of the procedure).<a name="line.1460"></a>
-<span class="sourceLineNo">1461</span>   * @param instance The instance name of the procedure. For some procedures, this parameter is<a name="line.1461"></a>
-<span class="sourceLineNo">1462</span>   * optional.<a name="line.1462"></a>
-<span class="sourceLineNo">1463</span>   * @param props Property/Value pairs of properties passing to the procedure<a name="line.1463"></a>
-<span class="sourceLineNo">1464</span>   * @return data returned after procedure execution. null if no return data.<a name="line.1464"></a>
-<span class="sourceLineNo">1465</span>   * @throws IOException<a name="line.1465"></a>
-<span class="sourceLineNo">1466</span>   */<a name="line.1466"></a>
-<span class="sourceLineNo">1467</span>  byte[] execProcedureWithReturn(String signature, String instance, Map&lt;String, String&gt; props)<a name="line.1467"></a>
-<span class="sourceLineNo">1468</span>      throws IOException;<a name="line.1468"></a>
-<span class="sourceLineNo">1469</span><a name="line.1469"></a>
-<span class="sourceLineNo">1470</span>  /**<a name="line.1470"></a>
-<span class="sourceLineNo">1471</span>   * Check the current state of the specified procedure. There are three possible states: &lt;ol&gt;<a name="line.1471"></a>
-<span class="sourceLineNo">1472</span>   * &lt;li&gt;running - returns &lt;tt&gt;false&lt;/tt&gt;&lt;/li&gt; &lt;li&gt;finished - returns &lt;tt&gt;true&lt;/tt&gt;&lt;/li&gt;<a name="line.1472"></a>
-<span class="sourceLineNo">1473</span>   * &lt;li&gt;finished with error - throws the exception that caused the procedure to fail&lt;/li&gt; &lt;/ol&gt;<a name="line.1473"></a>
-<span class="sourceLineNo">1474</span>   *<a name="line.1474"></a>
-<span class="sourceLineNo">1475</span>   * @param signature The signature that uniquely identifies a procedure<a name="line.1475"></a>
-<span class="sourceLineNo">1476</span>   * @param instance The instance name of the procedure<a name="line.1476"></a>
-<span class="sourceLineNo">1477</span>   * @param props Property/Value pairs of properties passing to the procedure<a name="line.1477"></a>
-<span class="sourceLineNo">1478</span>   * @return &lt;code&gt;true&lt;/code&gt; if the specified procedure is finished successfully, &lt;code&gt;false&lt;/code&gt; if it is still running<a name="line.1478"></a>
-<span class="sourceLineNo">1479</span>   * @throws IOException if the specified procedure finished with error<a name="line.1479"></a>
-<span class="sourceLineNo">1480</span>   */<a name="line.1480"></a>
-<span class="sourceLineNo">1481</span>  boolean isProcedureFinished(String signature, String instance, Map&lt;String, String&gt; props)<a name="line.1481"></a>
-<span class="sourceLineNo">1482</span>      throws IOException;<a name="line.1482"></a>
-<span class="sourceLineNo">1483</span><a name="line.1483"></a>
-<span class="sourceLineNo">1484</span>  /**<a name="line.1484"></a>
-<span class="sourceLineNo">1485</span>   * List completed snapshots.<a name="line.1485"></a>
-<span class="sourceLineNo">1486</span>   *<a name="line.1486"></a>
-<span class="sourceLineNo">1487</span>   * @return a list of snapshot descriptors for completed snapshots<a name="line.1487"></a>
-<span class="sourceLineNo">1488</span>   * @throws IOException if a network error occurs<a name="line.1488"></a>
-<span class="sourceLineNo">1489</span>   */<a name="line.1489"></a>
-<span class="sourceLineNo">1490</span>  List&lt;SnapshotDescription&gt; listSnapshots() throws IOException;<a name="line.1490"></a>
-<span class="sourceLineNo">1491</span><a name="line.1491"></a>
-<span class="sourceLineNo">1492</span>  /**<a name="line.1492"></a>
-<span class="sourceLineNo">1493</span>   * List all the completed snapshots matching the given pattern.<a name="line.1493"></a>
-<span class="sourceLineNo">1494</span>   *<a name="line.1494"></a>
-<span class="sourceLineNo">1495</span>   * @param pattern The compiled regular expression to match against<a name="line.1495"></a>
-<span class="sourceLineNo">1496</span>   * @return list of SnapshotDescription<a name="line.1496"></a>
-<span class="sourceLineNo">1497</span>   * @throws IOException if a remote or network exception occurs<a name="line.1497"></a>
-<span class="sourceLineNo">1498</span>   */<a name="line.1498"></a>
-<span class="sourceLineNo">1499</span>  List&lt;SnapshotDescription&gt; listSnapshots(Pattern pattern) throws IOException;<a name="line.1499"></a>
-<span class="sourceLineNo">1500</span><a name="line.1500"></a>
-<span class="sourceLineNo">1501</span>  /**<a name="line.1501"></a>
-<span class="sourceLineNo">1502</span>   * List all the completed snapshots matching the given table name regular expression and snapshot<a name="line.1502"></a>
-<span class="sourceLineNo">1503</span>   * name regular expression.<a name="line.1503"></a>
-<span class="sourceLineNo">1504</span>   * @param tableNamePattern The compiled table name regular expression to match against<a name="line.1504"></a>
-<span class="sourceLineNo">1505</span>   * @param snapshotNamePattern The compiled snapshot name regular expression to match against<a name="line.1505"></a>
-<span class="sourceLineNo">1506</span>   * @return list of completed SnapshotDescription<a name="line.1506"></a>
-<span class="sourceLineNo">1507</span>   * @throws IOException if a remote or network exception occurs<a name="line.1507"></a>
-<span class="sourceLineNo">1508</span>   */<a name="line.1508"></a>
-<span class="sourceLineNo">1509</span>  List&lt;SnapshotDescription&gt; listTableSnapshots(Pattern tableNamePattern,<a name="line.1509"></a>
-<span class="sourceLineNo">1510</span>      Pattern snapshotNamePattern) throws IOException;<a name="line.1510"></a>
-<span class="sourceLineNo">1511</span><a name="line.1511"></a>
-<span class="sourceLineNo">1512</span>  /**<a name="line.1512"></a>
-<span class="sourceLineNo">1513</span>   * Delete an existing snapshot.<a name="line.1513"></a>
-<span class="sourceLineNo">1514</span>   *<a name="line.1514"></a>
-<span class="sourceLineNo">1515</span>   * @param snapshotName name of the snapshot<a name="line.1515"></a>
-<span class="sourceLineNo">1516</span>   * @throws IOException if a remote or network exception occurs<a name="line.1516"></a>
-<span class="sourceLineNo">1517</span>   */<a name="line.1517"></a>
-<span class="sourceLineNo">1518</span>  void deleteSnapshot(String snapshotName) throws IOException;<a name="line.1518"></a>
-<span class="sourceLineNo">1519</span><a name="line.1519"></a>
-<span class="sourceLineNo">1520</span>  /**<a name="line.1520"></a>
-<span class="sourceLineNo">1521</span>   * Delete existing snapshots whose names match the pattern passed.<a name="line.1521"></a>
-<span class="sourceLineNo">1522</span>   *<a name="line.1522"></a>
-<span class="sourceLineNo">1523</span>   * @param pattern pattern for names of the snapshot to match<a name="line.1523"></a>
-<span class="sourceLineNo">1524</span>   * @throws IOException if a remote or network exception occurs<a name="line.1524"></a>
-<span class="sourceLineNo">1525</span>   */<a name="line.1525"></a>
-<span class="sourceLineNo">1526</span>  void deleteSnapshots(Pattern pattern) throws IOException;<a name="line.1526"></a>
-<span class="sourceLineNo">1527</span><a name="line.1527"></a>
-<span class="sourceLineNo">1528</span>  /**<a name="line.1528"></a>
-<span class="sourceLineNo">1529</span>   * Delete all existing snapshots matching the given table name regular expression and snapshot<a name="line.1529"></a>
-<span class="sourceLineNo">1530</span>   * name regular expression.<a name="line.1530"></a>
-<span class="sourceLineNo">1531</span>   * @param tableNamePattern The compiled table name regular expression to match against<a name="line.1531"></a>
-<span class="sourceLineNo">1532</span>   * @param snapshotNamePattern The compiled snapshot name regular expression to match against<a name="line.1532"></a>
-<span class="sourceLineNo">1533</span>   * @throws IOException if a remote or network exception occurs<a name="line.1533"></a>
-<span class="sourceLineNo">1534</span>   */<a name="line.1534"></a>
-<span class="sourceLineNo">1535</span>  void deleteTableSnapshots(Pattern tableNamePattern, Pattern snapshotNamePattern)<a name="line.1535"></a>
-<span class="sourceLineNo">1536</span>      throws IOException;<a name="line.1536"></a>
-<span class="sourceLineNo">1537</span><a name="line.1537"></a>
-<span class="sourceLineNo">1538</span>  /**<a name="line.1538"></a>
-<span class="sourceLineNo">1539</span>   * Apply the new quota settings.<a name="line.1539"></a>
-<span class="sourceLineNo">1540</span>   *<a name="line.1540"></a>
-<span class="sourceLineNo">1541</span>   * @param quota the quota settings<a name="line.1541"></a>
-<span class="sourceLineNo">1542</span>   * @throws IOException if a remote or network exception occurs<a name="line.1542"></a>
-<span class="sourceLineNo">1543</span>   */<a name="line.1543"></a>
-<span class="sourceLineNo">1544</span>  void setQuota(QuotaSettings quota) throws IOException;<a name="line.1544"></a>
-<span class="sourceLineNo">1545</span><a name="line.1545"></a>
-<span class="sourceLineNo">1546</span>  /**<a name="line.1546"></a>
-<span class="sourceLineNo">1547</span>   * List the quotas based on the filter.<a name="line.1547"></a>
-<span class="sourceLineNo">1548</span>   * @param filter the quota settings filter<a name="line.1548"></a>
-<span class="sourceLineNo">1549</span>   * @return the QuotaSetting list<a name="line.1549"></a>
-<span class="sourceLineNo">1550</span>   * @throws IOException if a remote or network exception occurs<a name="line.1550"></a>
-<span class="sourceLineNo">1551</span>   */<a name="line.1551"></a>
-<span class="sourceLineNo">1552</span>  List&lt;QuotaSettings&gt; getQuota(QuotaFilter filter) throws IOException;<a name="line.1552"></a>
-<span class="sourceLineNo">1553</span><a name="line.1553"></a>
-<span class="sourceLineNo">1554</span>  /**<a name="line.1554"></a>
-<span class="sourceLineNo">1555</span>   * Creates and returns a {@link com.google.protobuf.RpcChannel} instance connected to the active<a name="line.1555"></a>
-<span class="sourceLineNo">1556</span>   * master. &lt;p&gt; The obtained {@link com.google.protobuf.RpcChannel} instance can be used to access<a name="line.1556"></a>
-<span class="sourceLineNo">1557</span>   * a published coprocessor {@link com.google.protobuf.Service} using standard protobuf service<a name="line.1557"></a>
-<span class="sourceLineNo">1558</span>   * invocations: &lt;/p&gt; &lt;div style="background-color: #cccccc; padding: 2px"&gt;<a name="line.1558"></a>
-<span class="sourceLineNo">1559</span>   * &lt;blockquote&gt;&lt;pre&gt;<a name="line.1559"></a>
-<span class="sourceLineNo">1560</span>   * CoprocessorRpcChannel channel = myAdmin.coprocessorService();<a name="line.1560"></a>
-<span class="sourceLineNo">1561</span>   * MyService.BlockingInterface service = MyService.newBlockingStub(channel);<a name="line.1561"></a>
-<span class="sourceLineNo">1562</span>   * MyCallRequest request = MyCallRequest.newBuilder()<a name="line.1562"></a>
-<span class="sourceLineNo">1563</span>   *     ...<a name="line.1563"></a>
-<span class="sourceLineNo">1564</span>   *     .build();<a name="line.1564"></a>
-<span class="sourceLineNo">1565</span>   * MyCallResponse response = service.myCall(null, request);<a name="line.1565"></a>
-<span class="sourceLineNo">1566</span>   * &lt;/pre&gt;&lt;/blockquote&gt;&lt;/div&gt;<a name="line.1566"></a>
-<span class="sourceLineNo">1567</span>   *<a name="line.1567"></a>
-<span class="sourceLineNo">1568</span>   * @return A MasterCoprocessorRpcChannel instance<a name="line.1568"></a>
-<span class="sourceLineNo">1569</span>   */<a name="line.1569"></a>
-<span class="sourceLineNo">1570</span>  CoprocessorRpcChannel coprocessorService();<a name="line.1570"></a>
-<span class="sourceLineNo">1571</span><a name="line.1571"></a>
+<span class="sourceLineNo">831</span><a name="line.831"></a>
+<span class="sourceLineNo">832</span>  /**<a name="line.832"></a>
+<span class="sourceLineNo">833</span>   * Merge two regions. Asynchronous operation.<a name="line.833"></a>
+<span class="sourceLineNo">834</span>   * @param nameOfRegionA encoded or full name of region a<a name="line.834"></a>
+<span class="sourceLineNo">835</span>   * @param nameOfRegionB encoded or full name of region b<a name="line.835"></a>
+<span class="sourceLineNo">836</span>   * @param forcible &lt;code&gt;true&lt;/code&gt; if do a compulsory merge, otherwise we will only merge two<a name="line.836"></a>
+<span class="sourceLineNo">837</span>   *          adjacent regions<a name="line.837"></a>
+<span class="sourceLineNo">838</span>   */<a name="line.838"></a>
+<span class="sourceLineNo">839</span>  default Future&lt;Void&gt; mergeRegionsAsync(byte[] nameOfRegionA, byte[] nameOfRegionB,<a name="line.839"></a>
+<span class="sourceLineNo">840</span>      boolean forcible) throws IOException {<a name="line.840"></a>
+<span class="sourceLineNo">841</span>    byte[][] nameofRegionsToMerge = new byte[2][];<a name="line.841"></a>
+<span class="sourceLineNo">842</span>    nameofRegionsToMerge[0] = nameOfRegionA;<a name="line.842"></a>
+<span class="sourceLineNo">843</span>    nameofRegionsToMerge[1] = nameOfRegionB;<a name="line.843"></a>
+<span class="sourceLineNo">844</span>    return mergeRegionsAsync(nameofRegionsToMerge, forcible);<a name="line.844"></a>
+<span class="sourceLineNo">845</span>  }<a name="line.845"></a>
+<span class="sourceLineNo">846</span><a name="line.846"></a>
+<span class="sourceLineNo">847</span>  /**<a name="line.847"></a>
+<span class="sourceLineNo">848</span>   * Merge regions. Asynchronous operation.<a name="line.848"></a>
+<span class="sourceLineNo">849</span>   * &lt;p/&gt;<a name="line.849"></a>
+<span class="sourceLineNo">850</span>   * You may get a {@code DoNotRetryIOException} if you pass more than two regions in but the master<a name="line.850"></a>
+<span class="sourceLineNo">851</span>   * does not support merging more than two regions. At least till 2.2.0, we still only support<a name="line.851"></a>
+<span class="sourceLineNo">852</span>   * merging two regions.<a name="line.852"></a>
+<span class="sourceLineNo">853</span>   * @param nameofRegionsToMerge encoded or full name of daughter regions<a name="line.853"></a>
+<span class="sourceLineNo">854</span>   * @param forcible &lt;code&gt;true&lt;/code&gt; if do a compulsory merge, otherwise we will only merge<a name="line.854"></a>
+<span class="sourceLineNo">855</span>   *          adjacent regions<a name="line.855"></a>
+<span class="sourceLineNo">856</span>   */<a name="line.856"></a>
+<span class="sourceLineNo">857</span>  Future&lt;Void&gt; mergeRegionsAsync(byte[][] nameofRegionsToMerge, boolean forcible)<a name="line.857"></a>
+<span class="sourceLineNo">858</span>      throws IOException;<a name="line.858"></a>
+<span class="sourceLineNo">859</span><a name="line.859"></a>
+<span class="sourceLineNo">860</span>  /**<a name="line.860"></a>
+<span class="sourceLineNo">861</span>   * Split a table. The method will execute split action for each region in table.<a name="line.861"></a>
+<span class="sourceLineNo">862</span>   * Asynchronous operation.<a name="line.862"></a>
+<span class="sourceLineNo">863</span>   * @param tableName table to split<a name="line.863"></a>
+<span class="sourceLineNo">864</span>   * @throws IOException if a remote or network exception occurs<a name="line.864"></a>
+<span class="sourceLineNo">865</span>   */<a name="line.865"></a>
+<span class="sourceLineNo">866</span>  void split(TableName tableName) throws IOException;<a name="line.866"></a>
+<span class="sourceLineNo">867</span><a name="line.867"></a>
+<span class="sourceLineNo">868</span>  /**<a name="line.868"></a>
+<span class="sourceLineNo">869</span>   * Split a table. Asynchronous operation.<a name="line.869"></a>
+<span class="sourceLineNo">870</span>   *<a name="line.870"></a>
+<span class="sourceLineNo">871</span>   * @param tableName table to split<a name="line.871"></a>
+<span class="sourceLineNo">872</span>   * @param splitPoint the explicit position to split on<a name="line.872"></a>
+<span class="sourceLineNo">873</span>   * @throws IOException if a remote or network exception occurs<a name="line.873"></a>
+<span class="sourceLineNo">874</span>   */<a name="line.874"></a>
+<span class="sourceLineNo">875</span>  void split(TableName tableName, byte[] splitPoint) throws IOException;<a name="line.875"></a>
+<span class="sourceLineNo">876</span><a name="line.876"></a>
+<span class="sourceLineNo">877</span>  /**<a name="line.877"></a>
+<span class="sourceLineNo">878</span>   * Split an individual region. Asynchronous operation.<a name="line.878"></a>
+<span class="sourceLineNo">879</span>   * @param regionName region to split<a name="line.879"></a>
+<span class="sourceLineNo">880</span>   * @param splitPoint the explicit position to split on<a name="line.880"></a>
+<span class="sourceLineNo">881</span>   * @throws IOException if a remote or network exception occurs<a name="line.881"></a>
+<span class="sourceLineNo">882</span>   */<a name="line.882"></a>
+<span class="sourceLineNo">883</span>  Future&lt;Void&gt; splitRegionAsync(byte[] regionName, byte[] splitPoint) throws IOException;<a name="line.883"></a>
+<span class="sourceLineNo">884</span><a name="line.884"></a>
+<span class="sourceLineNo">885</span>  /**<a name="line.885"></a>
+<span class="sourceLineNo">886</span>   * Modify an existing table, more IRB friendly version.<a name="line.886"></a>
+<span class="sourceLineNo">887</span>   * @param td modified description of the table<a name="line.887"></a>
+<span class="sourceLineNo">888</span>   * @throws IOException if a remote or network exception occurs<a name="line.888"></a>
+<span class="sourceLineNo">889</span>   */<a name="line.889"></a>
+<span class="sourceLineNo">890</span>  default void modifyTable(TableDescriptor td) throws IOException {<a name="line.890"></a>
+<span class="sourceLineNo">891</span>    get(modifyTableAsync(td), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.891"></a>
+<span class="sourceLineNo">892</span>  }<a name="line.892"></a>
+<span class="sourceLineNo">893</span><a name="line.893"></a>
+<span class="sourceLineNo">894</span>  /**<a name="line.894"></a>
+<span class="sourceLineNo">895</span>   * Modify an existing table, more IRB (ruby) friendly version. Asynchronous operation. This means<a name="line.895"></a>
+<span class="sourceLineNo">896</span>   * that it may be a while before your schema change is updated across all of the table. You can<a name="line.896"></a>
+<span class="sourceLineNo">897</span>   * use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.897"></a>
+<span class="sourceLineNo">898</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.898"></a>
+<span class="sourceLineNo">899</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.899"></a>
+<span class="sourceLineNo">900</span>   * @param td description of the table<a name="line.900"></a>
+<span class="sourceLineNo">901</span>   * @throws IOException if a remote or network exception occurs<a name="line.901"></a>
+<span class="sourceLineNo">902</span>   * @return the result of the async modify. You can use Future.get(long, TimeUnit) to wait on the<a name="line.902"></a>
+<span class="sourceLineNo">903</span>   *         operation to complete<a name="line.903"></a>
+<span class="sourceLineNo">904</span>   */<a name="line.904"></a>
+<span class="sourceLineNo">905</span>  Future&lt;Void&gt; modifyTableAsync(TableDescriptor td) throws IOException;<a name="line.905"></a>
+<span class="sourceLineNo">906</span><a name="line.906"></a>
+<span class="sourceLineNo">907</span>  /**<a name="line.907"></a>
+<span class="sourceLineNo">908</span>   * Shuts down the HBase cluster.<a name="line.908"></a>
+<span class="sourceLineNo">909</span>   * &lt;p/&gt;<a name="line.909"></a>
+<span class="sourceLineNo">910</span>   * Notice that, a success shutdown call may ends with an error since the remote server has already<a name="line.910"></a>
+<span class="sourceLineNo">911</span>   * been shutdown.<a name="line.911"></a>
+<span class="sourceLineNo">912</span>   * @throws IOException if a remote or network exception occurs<a name="line.912"></a>
+<span class="sourceLineNo">913</span>   */<a name="line.913"></a>
+<span class="sourceLineNo">914</span>  void shutdown() throws IOException;<a name="line.914"></a>
+<span class="sourceLineNo">915</span><a name="line.915"></a>
+<span class="sourceLineNo">916</span>  /**<a name="line.916"></a>
+<span class="sourceLineNo">917</span>   * Shuts down the current HBase master only. Does not shutdown the cluster.<a name="line.917"></a>
+<span class="sourceLineNo">918</span>   * &lt;p/&gt;<a name="line.918"></a>
+<span class="sourceLineNo">919</span>   * Notice that, a success stopMaster call may ends with an error since the remote server has<a name="line.919"></a>
+<span class="sourceLineNo">920</span>   * already been shutdown.<a name="line.920"></a>
+<span class="sourceLineNo">921</span>   * @throws IOException if a remote or network exception occurs<a name="line.921"></a>
+<span class="sourceLineNo">922</span>   * @see #shutdown()<a name="line.922"></a>
+<span class="sourceLineNo">923</span>   */<a name="line.923"></a>
+<span class="sourceLineNo">924</span>  void stopMaster() throws IOException;<a name="line.924"></a>
+<span class="sourceLineNo">925</span><a name="line.925"></a>
+<span class="sourceLineNo">926</span>  /**<a name="line.926"></a>
+<span class="sourceLineNo">927</span>   * Check whether Master is in maintenance mode.<a name="line.927"></a>
+<span class="sourceLineNo">928</span>   *<a name="line.928"></a>
+<span class="sourceLineNo">929</span>   * @throws IOException if a remote or network exception occurs<a name="line.929"></a>
+<span class="sourceLineNo">930</span>   */<a name="line.930"></a>
+<span class="sourceLineNo">931</span>  boolean isMasterInMaintenanceMode()  throws IOException;<a name="line.931"></a>
+<span class="sourceLineNo">932</span><a name="line.932"></a>
+<span class="sourceLineNo">933</span>  /**<a name="line.933"></a>
+<span class="sourceLineNo">934</span>   * Stop the designated regionserver.<a name="line.934"></a>
+<span class="sourceLineNo">935</span>   *<a name="line.935"></a>
+<span class="sourceLineNo">936</span>   * @param hostnamePort Hostname and port delimited by a &lt;code&gt;:&lt;/code&gt; as in<a name="line.936"></a>
+<span class="sourceLineNo">937</span>   * &lt;code&gt;example.org:1234&lt;/code&gt;<a name="line.937"></a>
+<span class="sourceLineNo">938</span>   * @throws IOException if a remote or network exception occurs<a name="line.938"></a>
+<span class="sourceLineNo">939</span>   */<a name="line.939"></a>
+<span class="sourceLineNo">940</span>  void stopRegionServer(String hostnamePort) throws IOException;<a name="line.940"></a>
+<span class="sourceLineNo">941</span><a name="line.941"></a>
+<span class="sourceLineNo">942</span>  /**<a name="line.942"></a>
+<span class="sourceLineNo">943</span>   * Get whole cluster metrics, containing status about:<a name="line.943"></a>
+<span class="sourceLineNo">944</span>   * &lt;pre&gt;<a name="line.944"></a>
+<span class="sourceLineNo">945</span>   * hbase version<a name="line.945"></a>
+<span class="sourceLineNo">946</span>   * cluster id<a name="line.946"></a>
+<span class="sourceLineNo">947</span>   * primary/backup master(s)<a name="line.947"></a>
+<span class="sourceLineNo">948</span>   * master's coprocessors<a name="line.948"></a>
+<span class="sourceLineNo">949</span>   * live/dead regionservers<a name="line.949"></a>
+<span class="sourceLineNo">950</span>   * balancer<a name="line.950"></a>
+<span class="sourceLineNo">951</span>   * regions in transition<a name="line.951"></a>
+<span class="sourceLineNo">952</span>   * &lt;/pre&gt;<a name="line.952"></a>
+<span class="sourceLineNo">953</span>   * @return cluster metrics<a name="line.953"></a>
+<span class="sourceLineNo">954</span>   * @throws IOException if a remote or network exception occurs<a name="line.954"></a>
+<span class="sourceLineNo">955</span>   */<a name="line.955"></a>
+<span class="sourceLineNo">956</span>  default ClusterMetrics getClusterMetrics() throws IOException {<a name="line.956"></a>
+<span class="sourceLineNo">957</span>    return getClusterMetrics(EnumSet.allOf(ClusterMetrics.Option.class));<a name="line.957"></a>
+<span class="sourceLineNo">958</span>  }<a name="line.958"></a>
+<span class="sourceLineNo">959</span><a name="line.959"></a>
+<span class="sourceLineNo">960</span>  /**<a name="line.960"></a>
+<span class="sourceLineNo">961</span>   * Get cluster status with a set of {@link Option} to get desired status.<a name="line.961"></a>
+<span class="sourceLineNo">962</span>   * @return cluster status<a name="line.962"></a>
+<span class="sourceLineNo">963</span>   * @throws IOException if a remote or network exception occurs<a name="line.963"></a>
+<span class="sourceLineNo">964</span>   */<a name="line.964"></a>
+<span class="sourceLineNo">965</span>  ClusterMetrics getClusterMetrics(EnumSet&lt;Option&gt; options) throws IOException;<a name="line.965"></a>
+<span class="sourceLineNo">966</span><a name="line.966"></a>
+<span class="sourceLineNo">967</span>  /**<a name="line.967"></a>
+<span class="sourceLineNo">968</span>   * @return current master server name<a name="line.968"></a>
+<span class="sourceLineNo">969</span>   * @throws IOException if a remote or network exception occurs<a name="line.969"></a>
+<span class="sourceLineNo">970</span>   */<a name="line.970"></a>
+<span class="sourceLineNo">971</span>  default ServerName getMaster() throws IOException {<a name="line.971"></a>
+<span class="sourceLineNo">972</span>    return getClusterMetrics(EnumSet.of(Option.MASTER)).getMasterName();<a name="line.972"></a>
+<span class="sourceLineNo">973</span>  }<a name="line.973"></a>
+<span class="sourceLineNo">974</span><a name="line.974"></a>
+<span class="sourceLineNo">975</span>  /**<a name="line.975"></a>
+<span class="sourceLineNo">976</span>   * @return current backup master list<a name="line.976"></a>
+<span class="sourceLineNo">977</span>   * @throws IOException if a remote or network exception occurs<a name="line.977"></a>
+<span class="sourceLineNo">978</span>   */<a name="line.978"></a>
+<span class="sourceLineNo">979</span>  default Collection&lt;ServerName&gt; getBackupMasters() throws IOException {<a name="line.979"></a>
+<span class="sourceLineNo">980</span>    return getClusterMetrics(EnumSet.of(Option.BACKUP_MASTERS)).getBackupMasterNames();<a name="line.980"></a>
+<span class="sourceLineNo">981</span>  }<a name="line.981"></a>
+<span class="sourceLineNo">982</span><a name="line.982"></a>
+<span class="sourceLineNo">983</span>  /**<a name="line.983"></a>
+<span class="sourceLineNo">984</span>   * @return current live region servers list<a name="line.984"></a>
+<span class="sourceLineNo">985</span>   * @throws IOException if a remote or network exception occurs<a name="line.985"></a>
+<span class="sourceLineNo">986</span>   */<a name="line.986"></a>
+<span class="sourceLineNo">987</span>  default Collection&lt;ServerName&gt; getRegionServers() throws IOException {<a name="line.987"></a>
+<span class="sourceLineNo">988</span>    return getClusterMetrics(EnumSet.of(Option.LIVE_SERVERS)).getLiveServerMetrics().keySet();<a name="line.988"></a>
+<span class="sourceLineNo">989</span>  }<a name="line.989"></a>
+<span class="sourceLineNo">990</span><a name="line.990"></a>
+<span class="sourceLineNo">991</span>  /**<a name="line.991"></a>
+<span class="sourceLineNo">992</span>   * Get {@link RegionMetrics} of all regions hosted on a regionserver.<a name="line.992"></a>
+<span class="sourceLineNo">993</span>   *<a name="line.993"></a>
+<span class="sourceLineNo">994</span>   * @param serverName region server from which {@link RegionMetrics} is required.<a name="line.994"></a>
+<span class="sourceLineNo">995</span>   * @return a {@link RegionMetrics} list of all regions hosted on a region server<a name="line.995"></a>
+<span class="sourceLineNo">996</span>   * @throws IOException if a remote or network exception occurs<a name="line.996"></a>
+<span class="sourceLineNo">997</span>   */<a name="line.997"></a>
+<span class="sourceLineNo">998</span>  default List&lt;RegionMetrics&gt; getRegionMetrics(ServerName serverName) throws IOException {<a name="line.998"></a>
+<span class="sourceLineNo">999</span>    return getRegionMetrics(serverName, null);<a name="line.999"></a>
+<span class="sourceLineNo">1000</span>  }<a name="line.1000"></a>
+<span class="sourceLineNo">1001</span><a name="line.1001"></a>
+<span class="sourceLineNo">1002</span>  /**<a name="line.1002"></a>
+<span class="sourceLineNo">1003</span>   * Get {@link RegionMetrics} of all regions hosted on a regionserver for a table.<a name="line.1003"></a>
+<span class="sourceLineNo">1004</span>   *<a name="line.1004"></a>
+<span class="sourceLineNo">1005</span>   * @param serverName region server from which {@link RegionMetrics} is required.<a name="line.1005"></a>
+<span class="sourceLineNo">1006</span>   * @param tableName get {@link RegionMetrics} of regions belonging to the table<a name="line.1006"></a>
+<span class="sourceLineNo">1007</span>   * @return region metrics map of all regions of a table hosted on a region server<a name="line.1007"></a>
+<span class="sourceLineNo">1008</span>   * @throws IOException if a remote or network exception occurs<a name="line.1008"></a>
+<span class="sourceLineNo">1009</span>   */<a name="line.1009"></a>
+<span class="sourceLineNo">1010</span>  List&lt;RegionMetrics&gt; getRegionMetrics(ServerName serverName,<a name="line.1010"></a>
+<span class="sourceLineNo">1011</span>    TableName tableName) throws IOException;<a name="line.1011"></a>
+<span class="sourceLineNo">1012</span><a name="line.1012"></a>
+<span class="sourceLineNo">1013</span>  /**<a name="line.1013"></a>
+<span class="sourceLineNo">1014</span>   * @return Configuration used by the instance.<a name="line.1014"></a>
+<span class="sourceLineNo">1015</span>   */<a name="line.1015"></a>
+<span class="sourceLineNo">1016</span>  Configuration getConfiguration();<a name="line.1016"></a>
+<span class="sourceLineNo">1017</span><a name="line.1017"></a>
+<span class="sourceLineNo">1018</span>  /**<a name="line.1018"></a>
+<span class="sourceLineNo">1019</span>   * Create a new namespace. Blocks until namespace has been successfully created or an exception is<a name="line.1019"></a>
+<span class="sourceLineNo">1020</span>   * thrown.<a name="line.1020"></a>
+<span class="sourceLineNo">1021</span>   * @param descriptor descriptor which describes the new namespace.<a name="line.1021"></a>
+<span class="sourceLineNo">1022</span>   */<a name="line.1022"></a>
+<span class="sourceLineNo">1023</span>  default void createNamespace(NamespaceDescriptor descriptor) throws IOException {<a name="line.1023"></a>
+<span class="sourceLineNo">1024</span>    get(createNamespaceAsync(descriptor), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.1024"></a>
+<span class="sourceLineNo">1025</span>  }<a name="line.1025"></a>
+<span class="sourceLineNo">1026</span><a name="line.1026"></a>
+<span class="sourceLineNo">1027</span>  /**<a name="line.1027"></a>
+<span class="sourceLineNo">1028</span>   * Create a new namespace.<a name="line.1028"></a>
+<span class="sourceLineNo">1029</span>   * @param descriptor descriptor which describes the new namespace<a name="line.1029"></a>
+<span class="sourceLineNo">1030</span>   * @return the result of the async create namespace operation. Use Future.get(long, TimeUnit) to<a name="line.1030"></a>
+<span class="sourceLineNo">1031</span>   *         wait on the operation to complete.<a name="line.1031"></a>
+<span class="sourceLineNo">1032</span>   */<a name="line.1032"></a>
+<span class="sourceLineNo">1033</span>  Future&lt;Void&gt; createNamespaceAsync(NamespaceDescriptor descriptor) throws IOException;<a name="line.1033"></a>
+<span class="sourceLineNo">1034</span><a name="line.1034"></a>
+<span class="sourceLineNo">1035</span>  /**<a name="line.1035"></a>
+<span class="sourceLineNo">1036</span>   * Modify an existing namespace. Blocks until namespace has been successfully modified or an<a name="line.1036"></a>
+<span class="sourceLineNo">1037</span>   * exception is thrown.<a name="line.1037"></a>
+<span class="sourceLineNo">1038</span>   * @param descriptor descriptor which describes the new namespace<a name="line.1038"></a>
+<span class="sourceLineNo">1039</span>   */<a name="line.1039"></a>
+<span class="sourceLineNo">1040</span>  default void modifyNamespace(NamespaceDescriptor descriptor) throws IOException {<a name="line.1040"></a>
+<span class="sourceLineNo">1041</span>    get(modifyNamespaceAsync(descriptor), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.1041"></a>
+<span class="sourceLineNo">1042</span>  }<a name="line.1042"></a>
+<span class="sourceLineNo">1043</span><a name="line.1043"></a>
+<span class="sourceLineNo">1044</span>  /**<a name="line.1044"></a>
+<span class="sourceLineNo">1045</span>   * Modify an existing namespace.<a name="line.1045"></a>
+<span class="sourceLineNo">1046</span>   * @param descriptor descriptor which describes the new namespace<a name="line.1046"></a>
+<span class="sourceLineNo">1047</span>   * @return the result of the async modify namespace operation. Use Future.get(long, TimeUnit) to<a name="line.1047"></a>
+<span class="sourceLineNo">1048</span>   *         wait on the operation to complete.<a name="line.1048"></a>
+<span class="sourceLineNo">1049</span>   */<a name="line.1049"></a>
+<span class="sourceLineNo">1050</span>  Future&lt;Void&gt; modifyNamespaceAsync(NamespaceDescriptor descriptor) throws IOException;<a name="line.1050"></a>
+<span class="sourceLineNo">1051</span><a name="line.1051"></a>
+<span class="sourceLineNo">1052</span>  /**<a name="line.1052"></a>
+<span class="sourceLineNo">1053</span>   * Delete an existing namespace. Only empty namespaces (no tables) can be removed. Blocks until<a name="line.1053"></a>
+<span class="sourceLineNo">1054</span>   * namespace has been successfully deleted or an exception is thrown.<a name="line.1054"></a>
+<span class="sourceLineNo">1055</span>   * @param name namespace name<a name="line.1055"></a>
+<span class="sourceLineNo">1056</span>   */<a name="line.1056"></a>
+<span class="sourceLineNo">1057</span>  default void deleteNamespace(String name) throws IOException {<a name="line.1057"></a>
+<span class="sourceLineNo">1058</span>    get(deleteNamespaceAsync(name), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.1058"></a>
+<span class="sourceLineNo">1059</span>  }<a name="line.1059"></a>
+<span class="sourceLineNo">1060</span><a name="line.1060"></a>
+<span class="sourceLineNo">1061</span>  /**<a name="line.1061"></a>
+<span class="sourceLineNo">1062</span>   * Delete an existing namespace. Only empty namespaces (no tables) can be removed.<a name="line.1062"></a>
+<span class="sourceLineNo">1063</span>   * @param name namespace name<a name="line.1063"></a>
+<span class="sourceLineNo">1064</span>   * @return the result of the async delete namespace operation. Use Future.get(long, TimeUnit) to<a name="line.1064"></a>
+<span class="sourceLineNo">1065</span>   *         wait on the operation to complete.<a name="line.1065"></a>
+<span class="sourceLineNo">1066</span>   */<a name="line.1066"></a>
+<span class="sourceLineNo">1067</span>  Future&lt;Void&gt; deleteNamespaceAsync(String name) throws IOException;<a name="line.1067"></a>
+<span class="sourceLineNo">1068</span><a name="line.1068"></a>
+<span class="sourceLineNo">1069</span>  /**<a name="line.1069"></a>
+<span class="sourceLineNo">1070</span>   * Get a namespace descriptor by name.<a name="line.1070"></a>
+<span class="sourceLineNo">1071</span>   * @param name name of namespace descriptor<a name="line.1071"></a>
+<span class="sourceLineNo">1072</span>   * @return A descriptor<a name="line.1072"></a>
+<span class="sourceLineNo">1073</span>   * @throws org.apache.hadoop.hbase.NamespaceNotFoundException<a name="line.1073"></a>
+<span class="sourceLineNo">1074</span>   * @throws IOException if a remote or network exception occurs<a name="line.1074"></a>
+<span class="sourceLineNo">1075</span>   */<a name="line.1075"></a>
+<span class="sourceLineNo">1076</span>  NamespaceDescriptor getNamespaceDescriptor(String name)<a name="line.1076"></a>
+<span class="sourceLineNo">1077</span>      throws NamespaceNotFoundException, IOException;<a name="line.1077"></a>
+<span class="sourceLineNo">1078</span><a name="line.1078"></a>
+<span class="sourceLineNo">1079</span>  /**<a name="line.1079"></a>
+<span class="sourceLineNo">1080</span>   * List available namespace descriptors.<a name="line.1080"></a>
+<span class="sourceLineNo">1081</span>   * @return List of descriptors<a name="line.1081"></a>
+<span class="sourceLineNo">1082</span>   */<a name="line.1082"></a>
+<span class="sourceLineNo">1083</span>  NamespaceDescriptor[] listNamespaceDescriptors() throws IOException;<a name="line.1083"></a>
+<span class="sourceLineNo">1084</span><a name="line.1084"></a>
+<span class="sourceLineNo">1085</span>  /**<a name="line.1085"></a>
+<span class="sourceLineNo">1086</span>   * Get list of table descriptors by namespace.<a name="line.1086"></a>
+<span class="sourceLineNo">1087</span>   * @param name namespace name<a name="line.1087"></a>
+<span class="sourceLineNo">1088</span>   * @return returns a list of TableDescriptors<a name="line.1088"></a>
+<span class="sourceLineNo">1089</span>   */<a name="line.1089"></a>
+<span class="sourceLineNo">1090</span>  List&lt;TableDescriptor&gt; listTableDescriptorsByNamespace(byte[] name) throws IOException;<a name="line.1090"></a>
+<span class="sourceLineNo">1091</span><a name="line.1091"></a>
+<span class="sourceLineNo">1092</span>  /**<a name="line.1092"></a>
+<span class="sourceLineNo">1093</span>   * Get list of table names by namespace.<a name="line.1093"></a>
+<span class="sourceLineNo">1094</span>   * @param name namespace name<a name="line.1094"></a>
+<span class="sourceLineNo">1095</span>   * @return The list of table names in the namespace<a name="line.1095"></a>
+<span class="sourceLineNo">1096</span>   */<a name="line.1096"></a>
+<span class="sourceLineNo">1097</span>  TableName[] listTableNamesByNamespace(String name) throws IOException;<a name="line.1097"></a>
+<span class="sourceLineNo">1098</span><a name="line.1098"></a>
+<span class="sourceLineNo">1099</span>  /**<a name="line.1099"></a>
+<span class="sourceLineNo">1100</span>   * Get the regions of a given table.<a name="line.1100"></a>
+<span class="sourceLineNo">1101</span>   *<a name="line.1101"></a>
+<span class="sourceLineNo">1102</span>   * @param tableName the name of the table<a name="line.1102"></a>
+<span class="sourceLineNo">1103</span>   * @return List of {@link RegionInfo}.<a name="line.1103"></a>
+<span class="sourceLineNo">1104</span>   */<a name="line.1104"></a>
+<span class="sourceLineNo">1105</span>  List&lt;RegionInfo&gt; getRegions(TableName tableName) throws IOException;<a name="line.1105"></a>
+<span class="sourceLineNo">1106</span><a name="line.1106"></a>
+<span class="sourceLineNo">1107</span>  @Override<a name="line.1107"></a>
+<span class="sourceLineNo">1108</span>  void close();<a name="line.1108"></a>
+<span class="sourceLineNo">1109</span><a name="line.1109"></a>
+<span class="sourceLineNo">1110</span>  /**<a name="line.1110"></a>
+<span class="sourceLineNo">1111</span>   * Get tableDescriptors.<a name="line.1111"></a>
+<span class="sourceLineNo">1112</span>   *<a name="line.1112"></a>
+<span class="sourceLineNo">1113</span>   * @param tableNames List of table names<a name="line.1113"></a>
+<span class="sourceLineNo">1114</span>   * @return returns a list of TableDescriptors<a name="line.1114"></a>
+<span class="sourceLineNo">1115</span>   * @throws IOException if a remote or network exception occurs<a name="line.1115"></a>
+<span class="sourceLineNo">1116</span>   */<a name="line.1116"></a>
+<span class="sourceLineNo">1117</span>  List&lt;TableDescriptor&gt; listTableDescriptors(List&lt;TableName&gt; tableNames)<a name="line.1117"></a>
+<span class="sourceLineNo">1118</span>    throws IOException;<a name="line.1118"></a>
+<span class="sourceLineNo">1119</span><a name="line.1119"></a>
+<span class="sourceLineNo">1120</span>  /**<a name="line.1120"></a>
+<span class="sourceLineNo">1121</span>   * Abort a procedure.<a name="line.1121"></a>
+<span class="sourceLineNo">1122</span>   * &lt;p/&gt;<a name="line.1122"></a>
+<span class="sourceLineNo">1123</span>   * Do not use. Usually it is ignored but if not, it can do more damage than good. See hbck2.<a name="line.1123"></a>
+<span class="sourceLineNo">1124</span>   * @param procId ID of the procedure to abort<a name="line.1124"></a>
+<span class="sourceLineNo">1125</span>   * @param mayInterruptIfRunning if the proc completed at least one step, should it be aborted?<a name="line.1125"></a>
+<span class="sourceLineNo">1126</span>   * @return &lt;code&gt;true&lt;/code&gt; if aborted, &lt;code&gt;false&lt;/code&gt; if procedure already completed or does<a name="line.1126"></a>
+<span class="sourceLineNo">1127</span>   *         not exist<a name="line.1127"></a>
+<span class="sourceLineNo">1128</span>   * @throws IOException<a name="line.1128"></a>
+<span class="sourceLineNo">1129</span>   * @deprecated Since 2.1.1 -- to be removed.<a name="line.1129"></a>
+<span class="sourceLineNo">1130</span>   */<a name="line.1130"></a>
+<span class="sourceLineNo">1131</span>  @Deprecated<a name="line.1131"></a>
+<span class="sourceLineNo">1132</span>  default boolean abortProcedure(long procId, boolean mayInterruptIfRunning) throws IOException {<a name="line.1132"></a>
+<span class="sourceLineNo">1133</span>    return get(abortProcedureAsync(procId, mayInterruptIfRunning), getSyncWaitTimeout(),<a name="line.1133"></a>
+<span class="sourceLineNo">1134</span>      TimeUnit.MILLISECONDS);<a name="line.1134"></a>
+<span class="sourceLineNo">1135</span>  }<a name="line.1135"></a>
+<span class="sourceLineNo">1136</span><a name="line.1136"></a>
+<span class="sourceLineNo">1137</span>  /**<a name="line.1137"></a>
+<span class="sourceLineNo">1138</span>   * Abort a procedure but does not block and wait for completion.<a name="line.1138"></a>
+<span class="sourceLineNo">1139</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.1139"></a>
+<span class="sourceLineNo">1140</span>   * It may throw ExecutionException if there was an error while executing the operation<a name="line.1140"></a>
+<span class="sourceLineNo">1141</span>   * or TimeoutException in case the wait timeout was not long enough to allow the<a name="line.1141"></a>
+<span class="sourceLineNo">1142</span>   * operation to complete.<a name="line.1142"></a>
+<span class="sourceLineNo">1143</span>   * Do not use. Usually it is ignored but if not, it can do more damage than good. See hbck2.<a name="line.1143"></a>
+<span class="sourceLineNo">1144</span>   *<a name="line.1144"></a>
+<span class="sourceLineNo">1145</span>   * @param procId ID of the procedure to abort<a name="line.1145"></a>
+<span class="sourceLineNo">1146</span>   * @param mayInterruptIfRunning if the proc completed at least one step, should it be aborted?<a name="line.1146"></a>
+<span class="sourceLineNo">1147</span>   * @return &lt;code&gt;true&lt;/code&gt; if aborted, &lt;code&gt;false&lt;/code&gt; if procedure already completed or does not exist<a name="line.1147"></a>
+<span class="sourceLineNo">1148</span>   * @throws IOException<a name="line.1148"></a>
+<span class="sourceLineNo">1149</span>   * @deprecated Since 2.1.1 -- to be removed.<a name="line.1149"></a>
+<span class="sourceLineNo">1150</span>   */<a name="line.1150"></a>
+<span class="sourceLineNo">1151</span>  @Deprecated<a name="line.1151"></a>
+<span class="sourceLineNo">1152</span>  Future&lt;Boolean&gt; abortProcedureAsync(long procId, boolean mayInterruptIfRunning)<a name="line.1152"></a>
+<span class="sourceLineNo">1153</span>      throws IOException;<a name="line.1153"></a>
+<span class="sourceLineNo">1154</span><a name="line.1154"></a>
+<span class="sourceLineNo">1155</span>  /**<a name="line.1155"></a>
+<span class="sourceLineNo">1156</span>   * Get procedures.<a name="line.1156"></a>
+<span class="sourceLineNo">1157</span>   * @return procedure list in JSON<a name="line.1157"></a>
+<span class="sourceLineNo">1158</span>   * @throws IOException<a name="line.1158"></a>
+<span class="sourceLineNo">1159</span>   */<a name="line.1159"></a>
+<span class="sourceLineNo">1160</span>  String getProcedures() throws IOException;<a name="line.1160"></a>
+<span class="sourceLineNo">1161</span><a name="line.1161"></a>
+<span class="sourceLineNo">1162</span>  /**<a name="line.1162"></a>
+<span class="sourceLineNo">1163</span>   * Get locks.<a name="line.1163"></a>
+<span class="sourceLineNo">1164</span>   * @return lock list in JSON<a name="line.1164"></a>
+<span class="sourceLineNo">1165</span>   * @throws IOException if a remote or network exception occurs<a name="line.1165"></a>
+<span class="sourceLineNo">1166</span>   */<a name="line.1166"></a>
+<span class="sourceLineNo">1167</span>  String getLocks() throws IOException;<a name="line.1167"></a>
+<span class="sourceLineNo">1168</span><a name="line.1168"></a>
+<span class="sourceLineNo">1169</span>  /**<a name="line.1169"></a>
+<span class="sourceLineNo">1170</span>   * Roll the log writer. I.e. for filesystem based write ahead logs, start writing to a new file.<a name="line.1170"></a>
+<span class="sourceLineNo">1171</span>   *<a name="line.1171"></a>
+<span class="sourceLineNo">1172</span>   * Note that the actual rolling of the log writer is asynchronous and may not be complete when<a name="line.1172"></a>
+<span class="sourceLineNo">1173</span>   * this method returns. As a side effect of this call, the named region server may schedule<a name="line.1173"></a>
+<span class="sourceLineNo">1174</span>   * store flushes at the request of the wal.<a name="line.1174"></a>
+<span class="sourceLineNo">1175</span>   *<a name="line.1175"></a>
+<span class="sourceLineNo">1176</span>   * @param serverName The servername of the regionserver.<a name="line.1176"></a>
+<span class="sourceLineNo">1177</span>   * @throws IOException if a remote or network exception occurs<a name="line.1177"></a>
+<span class="sourceLineNo">1178</span>   * @throws org.apache.hadoop.hbase.regionserver.wal.FailedLogCloseException<a name="line.1178"></a>
+<span class="sourceLineNo">1179</span>   */<a name="line.1179"></a>
+<span class="sourceLineNo">1180</span>  void rollWALWriter(ServerName serverName) throws IOException, FailedLogCloseException;<a name="line.1180"></a>
+<span class="sourceLineNo">1181</span><a name="line.1181"></a>
+<span class="sourceLineNo">1182</span>  /**<a name="line.1182"></a>
+<span class="sourceLineNo">1183</span>   * Helper that delegates to getClusterMetrics().getMasterCoprocessorNames().<a name="line.1183"></a>
+<span class="sourceLineNo">1184</span>   * @return an array of master coprocessors<a name="line.1184"></a>
+<span class="sourceLineNo">1185</span>   * @see org.apache.hadoop.hbase.ClusterMetrics#getMasterCoprocessorNames()<a name="line.1185"></a>
+<span class="sourceLineNo">1186</span>   */<a name="line.1186"></a>
+<span class="sourceLineNo">1187</span>  default List&lt;String&gt; getMasterCoprocessorNames() throws IOException {<a name="line.1187"></a>
+<span class="sourceLineNo">1188</span>    return getClusterMetrics(EnumSet.of(Option.MASTER_COPROCESSORS))<a name="line.1188"></a>
+<span class="sourceLineNo">1189</span>      .getMasterCoprocessorNames();<a name="line.1189"></a>
+<span class="sourceLineNo">1190</span>  }<a name="line.1190"></a>
+<span class="sourceLineNo">1191</span><a name="line.1191"></a>
+<span class="sourceLineNo">1192</span>  /**<a name="line.1192"></a>
+<span class="sourceLineNo">1193</span>   * Get the current compaction state of a table. It could be in a major compaction, a minor<a name="line.1193"></a>
+<span class="sourceLineNo">1194</span>   * compaction, both, or none.<a name="line.1194"></a>
+<span class="sourceLineNo">1195</span>   *<a name="line.1195"></a>
+<span class="sourceLineNo">1196</span>   * @param tableName table to examine<a name="line.1196"></a>
+<span class="sourceLineNo">1197</span>   * @return the current compaction state<a name="line.1197"></a>
+<span class="sourceLineNo">1198</span>   * @throws IOException if a remote or network exception occurs<a name="line.1198"></a>
+<span class="sourceLineNo">1199</span>   */<a name="line.1199"></a>
+<span class="sourceLineNo">1200</span>  CompactionState getCompactionState(TableName tableName) throws IOException;<a name="line.1200"></a>
+<span class="sourceLineNo">1201</span><a name="line.1201"></a>
+<span class="sourceLineNo">1202</span>  /**<a name="line.1202"></a>
+<span class="sourceLineNo">1203</span>   * Get the current compaction state of a table. It could be in a compaction, or none.<a name="line.1203"></a>
+<span class="sourceLineNo">1204</span>   *<a name="line.1204"></a>
+<span class="sourceLineNo">1205</span>   * @param tableName table to examine<a name="line.1205"></a>
+<span class="sourceLineNo">1206</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.1206"></a>
+<span class="sourceLineNo">1207</span>   * @return the current compaction state<a name="line.1207"></a>
+<span class="sourceLineNo">1208</span>   * @throws IOException if a remote or network exception occurs<a name="line.1208"></a>
+<span class="sourceLineNo">1209</span>   */<a name="line.1209"></a>
+<span class="sourceLineNo">1210</span>  CompactionState getCompactionState(TableName tableName,<a name="line.1210"></a>
+<span class="sourceLineNo">1211</span>    CompactType compactType) throws IOException;<a name="line.1211"></a>
+<span class="sourceLineNo">1212</span><a name="line.1212"></a>
+<span class="sourceLineNo">1213</span>  /**<a name="line.1213"></a>
+<span class="sourceLineNo">1214</span>   * Get the current compaction state of region. It could be in a major compaction, a minor<a name="line.1214"></a>
+<span class="sourceLineNo">1215</span>   * compaction, both, or none.<a name="line.1215"></a>
+<span class="sourceLineNo">1216</span>   *<a name="line.1216"></a>
+<span class="sourceLineNo">1217</span>   * @param regionName region to examine<a name="line.1217"></a>
+<span class="sourceLineNo">1218</span>   * @return the current compaction state<a name="line.1218"></a>
+<span class="sourceLineNo">1219</span>   * @throws IOException if a remote or network exception occurs<a name="line.1219"></a>
+<span class="sourceLineNo">1220</span>   */<a name="line.1220"></a>
+<span class="sourceLineNo">1221</span>  CompactionState getCompactionStateForRegion(byte[] regionName) throws IOException;<a name="line.1221"></a>
+<span class="sourceLineNo">1222</span><a name="line.1222"></a>
+<span class="sourceLineNo">1223</span>  /**<a name="line.1223"></a>
+<span class="sourceLineNo">1224</span>   * Get the timestamp of the last major compaction for the passed table<a name="line.1224"></a>
+<span class="sourceLineNo">1225</span>   *<a name="line.1225"></a>
+<span class="sourceLineNo">1226</span>   * The timestamp of the oldest HFile resulting from a major compaction of that table,<a name="line.1226"></a>
+<span class="sourceLineNo">1227</span>   * or 0 if no such HFile could be found.<a name="line.1227"></a>
+<span class="sourceLineNo">1228</span>   *<a name="line.1228"></a>
+<span class="sourceLineNo">1229</span>   * @param tableName table to examine<a name="line.1229"></a>
+<span class="sourceLineNo">1230</span>   * @return the last major compaction timestamp or 0<a name="line.1230"></a>
+<span class="sourceLineNo">1231</span>   * @throws IOException if a remote or network exception occurs<a name="line.1231"></a>
+<span class="sourceLineNo">1232</span>   */<a name="line.1232"></a>
+<span class="sourceLineNo">1233</span>  long getLastMajorCompactionTimestamp(TableName tableName) throws IOException;<a name="line.1233"></a>
+<span class="sourceLineNo">1234</span><a name="line.1234"></a>
+<span class="sourceLineNo">1235</span>  /**<a name="line.1235"></a>
+<span class="sourceLineNo">1236</span>   * Get the timestamp of the last major compaction for the passed region.<a name="line.1236"></a>
+<span class="sourceLineNo">1237</span>   *<a name="line.1237"></a>
+<span class="sourceLineNo">1238</span>   * The timestamp of the oldest HFile resulting from a major compaction of that region,<a name="line.1238"></a>
+<span class="sourceLineNo">1239</span>   * or 0 if no such HFile could be found.<a name="line.1239"></a>
+<span class="sourceLineNo">1240</span>   *<a name="line.1240"></a>
+<span class="sourceLineNo">1241</span>   * @param regionName region to examine<a name="line.1241"></a>
+<span class="sourceLineNo">1242</span>   * @return the last major compaction timestamp or 0<a name="line.1242"></a>
+<span class="sourceLineNo">1243</span>   * @throws IOException if a remote or network exception occurs<a name="line.1243"></a>
+<span class="sourceLineNo">1244</span>   */<a name="line.1244"></a>
+<span class="sourceLineNo">1245</span>  long getLastMajorCompactionTimestampForRegion(byte[] regionName) throws IOException;<a name="line.1245"></a>
+<span class="sourceLineNo">1246</span><a name="line.1246"></a>
+<span class="sourceLineNo">1247</span>  /**<a name="line.1247"></a>
+<span class="sourceLineNo">1248</span>   * Take a snapshot for the given table. If the table is enabled, a FLUSH-type snapshot will be<a name="line.1248"></a>
+<span class="sourceLineNo">1249</span>   * taken. If the table is disabled, an offline snapshot is taken. Snapshots are considered unique<a name="line.1249"></a>
+<span class="sourceLineNo">1250</span>   * based on &lt;b&gt;the name of the snapshot&lt;/b&gt;. Attempts to take a snapshot with the same name (even<a name="line.1250"></a>
+<span class="sourceLineNo">1251</span>   * a different type or with different parameters) will fail with a<a name="line.1251"></a>
+<span class="sourceLineNo">1252</span>   * {@link org.apache.hadoop.hbase.snapshot.SnapshotCreationException} indicating the duplicate<a name="line.1252"></a>
+<span class="sourceLineNo">1253</span>   * naming. Snapshot names follow the same naming constraints as tables in HBase. See<a name="line.1253"></a>
+<span class="sourceLineNo">1254</span>   * {@link org.apache.hadoop.hbase.TableName#isLegalFullyQualifiedTableName(byte[])}.<a name="line.1254"></a>
+<span class="sourceLineNo">1255</span>   * @param snapshotName name of the snapshot to be created<a name="line.1255"></a>
+<span class="sourceLineNo">1256</span>   * @param tableName name of the table for which snapshot is created<a name="line.1256"></a>
+<span class="sourceLineNo">1257</span>   * @throws IOException if a remote or network exception occurs<a name="line.1257"></a>
+<span class="sourceLineNo">1258</span>   * @throws org.apache.hadoop.hbase.snapshot.SnapshotCreationException if snapshot creation failed<a name="line.1258"></a>
+<span class="sourceLineNo">1259</span>   * @throws IllegalArgumentException if the snapshot request is formatted incorrectly<a name="line.1259"></a>
+<span class="sourceLineNo">1260</span>   */<a name="line.1260"></a>
+<span class="sourceLineNo">1261</span>  default void snapshot(String snapshotName, TableName tableName)<a name="line.1261"></a>
+<span class="sourceLineNo">1262</span>      throws IOException, SnapshotCreationException, IllegalArgumentException {<a name="line.1262"></a>
+<span class="sourceLineNo">1263</span>    snapshot(snapshotName, tableName, SnapshotType.FLUSH);<a name="line.1263"></a>
+<span class="sourceLineNo">1264</span>  }<a name="line.1264"></a>
+<span class="sourceLineNo">1265</span><a name="line.1265"></a>
+<span class="sourceLineNo">1266</span>  /**<a name="line.1266"></a>
+<span class="sourceLineNo">1267</span>   * Create typed snapshot of the table. Snapshots are considered unique based on &lt;b&gt;the name of the<a name="line.1267"></a>
+<span class="sourceLineNo">1268</span>   * snapshot&lt;/b&gt;. Attempts to take a snapshot with the same name (even a different type or with<a name="line.1268"></a>
+<span class="sourceLineNo">1269</span>   * different parameters) will fail with a {@link SnapshotCreationException} indicating the<a name="line.1269"></a>
+<span class="sourceLineNo">1270</span>   * duplicate naming. Snapshot names follow the same naming constraints as tables in HBase. See<a name="line.1270"></a>
+<span class="sourceLineNo">1271</span>   * {@link org.apache.hadoop.hbase.TableName#isLegalFullyQualifiedTableName(byte[])}.<a name="line.1271"></a>
+<span class="sourceLineNo">1272</span>   * @param snapshotName name to give the snapshot on the filesystem. Must be unique from all other<a name="line.1272"></a>
+<span class="sourceLineNo">1273</span>   *          snapshots stored on the cluster<a name="line.1273"></a>
+<span class="sourceLineNo">1274</span>   * @param tableName name of the table to snapshot<a name="line.1274"></a>
+<span class="sourceLineNo">1275</span>   * @param type type of snapshot to take<a name="line.1275"></a>
+<span class="sourceLineNo">1276</span>   * @throws IOException we fail to reach the master<a name="line.1276"></a>
+<span class="sourceLineNo">1277</span>   * @throws SnapshotCreationException if snapshot creation failed<a name="line.1277"></a>
+<span class="sourceLineNo">1278</span>   * @throws IllegalArgumentException if the snapshot request is formatted incorrectly<a name="line.1278"></a>
+<span class="sourceLineNo">1279</span>   */<a name="line.1279"></a>
+<span class="sourceLineNo">1280</span>  default void snapshot(String snapshotName, TableName tableName, SnapshotType type)<a name="line.1280"></a>
+<span class="sourceLineNo">1281</span>      throws IOException, SnapshotCreationException, IllegalArgumentException {<a name="line.1281"></a>
+<span class="sourceLineNo">1282</span>    snapshot(new SnapshotDescription(snapshotName, tableName, type));<a name="line.1282"></a>
+<span class="sourceLineNo">1283</span>  }<a name="line.1283"></a>
+<span class="sourceLineNo">1284</span><a name="line.1284"></a>
+<span class="sourceLineNo">1285</span>  /**<a name="line.1285"></a>
+<span class="sourceLineNo">1286</span>   * Take a snapshot and wait for the server to complete that snapshot (blocking). Only a single<a name="line.1286"></a>
+<span class="sourceLineNo">1287</span>   * snapshot should be taken at a time for an instance of HBase, or results may be undefined (you<a name="line.1287"></a>
+<span class="sourceLineNo">1288</span>   * can tell multiple HBase clusters to snapshot at the same time, but only one at a time for a<a name="line.1288"></a>
+<span class="sourceLineNo">1289</span>   * single cluster). Snapshots are considered unique based on &lt;b&gt;the name of the snapshot&lt;/b&gt;.<a name="line.1289"></a>
+<span class="sourceLineNo">1290</span>   * Attempts to take a snapshot with the same name (even a different type or with different<a name="line.1290"></a>
+<span class="sourceLineNo">1291</span>   * parameters) will fail with a {@link SnapshotCreationException} indicating the duplicate naming.<a name="line.1291"></a>
+<span class="sourceLineNo">1292</span>   * Snapshot names follow the same naming constraints as tables in HBase. See<a name="line.1292"></a>
+<span class="sourceLineNo">1293</span>   * {@link org.apache.hadoop.hbase.TableName#isLegalFullyQualifiedTableName(byte[])}. You should<a name="line.1293"></a>
+<span class="sourceLineNo">1294</span>   * probably use {@link #snapshot(String, org.apache.hadoop.hbase.TableName)} unless you are sure<a name="line.1294"></a>
+<span class="sourceLineNo">1295</span>   * about the type of snapshot that you want to take.<a name="line.1295"></a>
+<span class="sourceLineNo">1296</span>   * @param snapshot snapshot to take<a name="line.1296"></a>
+<span class="sourceLineNo">1297</span>   * @throws IOException or we lose contact with the master.<a name="line.1297"></a>
+<span class="sourceLineNo">1298</span>   * @throws SnapshotCreationException if snapshot failed to be taken<a name="line.1298"></a>
+<span class="sourceLineNo">1299</span>   * @throws IllegalArgumentException if the snapshot request is formatted incorrectly<a name="line.1299"></a>
+<span class="sourceLineNo">1300</span>   */<a name="line.1300"></a>
+<span class="sourceLineNo">1301</span>  void snapshot(SnapshotDescription snapshot)<a name="line.1301"></a>
+<span class="sourceLineNo">1302</span>      throws IOException, SnapshotCreationException, IllegalArgumentException;<a name="line.1302"></a>
+<span class="sourceLineNo">1303</span><a name="line.1303"></a>
+<span class="sourceLineNo">1304</span>  /**<a name="line.1304"></a>
+<span class="sourceLineNo">1305</span>   * Take a snapshot without waiting for the server to complete that snapshot (asynchronous) Only a<a name="line.1305"></a>
+<span class="sourceLineNo">1306</span>   * single snapshot should be taken at a time, or results may be undefined.<a name="line.1306"></a>
+<span class="sourceLineNo">1307</span>   *<a name="line.1307"></a>
+<span class="sourceLineNo">1308</span>   * @param snapshot snapshot to take<a name="line.1308"></a>
+<span class="sourceLineNo">1309</span>   * @throws IOException if the snapshot did not succeed or we lose contact with the master.<a name="line.1309"></a>
+<span class="sourceLineNo">1310</span>   * @throws SnapshotCreationException if snapshot creation failed<a name="line.1310"></a>
+<span class="sourceLineNo">1311</span>   * @throws IllegalArgumentException if the snapshot request is formatted incorrectly<a name="line.1311"></a>
+<span class="sourceLineNo">1312</span>   */<a name="line.1312"></a>
+<span class="sourceLineNo">1313</span>  Future&lt;Void&gt; snapshotAsync(SnapshotDescription snapshot)<a name="line.1313"></a>
+<span class="sourceLineNo">1314</span>      throws IOException, SnapshotCreationException;<a name="line.1314"></a>
+<span class="sourceLineNo">1315</span><a name="line.1315"></a>
+<span class="sourceLineNo">1316</span>  /**<a name="line.1316"></a>
+<span class="sourceLineNo">1317</span>   * Check the current state of the passed snapshot. There are three possible states: &lt;ol&gt;<a name="line.1317"></a>
+<span class="sourceLineNo">1318</span>   * &lt;li&gt;running - returns &lt;tt&gt;false&lt;/tt&gt;&lt;/li&gt; &lt;li&gt;finished - returns &lt;tt&gt;true&lt;/tt&gt;&lt;/li&gt;<a name="line.1318"></a>
+<span class="sourceLineNo">1319</span>   * &lt;li&gt;finished with error - throws the exception that caused the snapshot to fail&lt;/li&gt; &lt;/ol&gt; The<a name="line.1319"></a>
+<span class="sourceLineNo">1320</span>   * cluster only knows about the most recent snapshot. Therefore, if another snapshot has been<a name="line.1320"></a>
+<span class="sourceLineNo">1321</span>   * run/started since the snapshot you are checking, you will receive an {@link<a name="line.1321"></a>
+<span class="sourceLineNo">1322</span>   * org.apache.hadoop.hbase.snapshot.UnknownSnapshotException}.<a name="line.1322"></a>
+<span class="sourceLineNo">1323</span>   *<a name="line.1323"></a>
+<span class="sourceLineNo">1324</span>   * @param snapshot description of the snapshot to check<a name="line.1324"></a>
+<span class="sourceLineNo">1325</span>   * @return &lt;tt&gt;true&lt;/tt&gt; if the snapshot is completed, &lt;tt&gt;false&lt;/tt&gt; if the snapshot is still<a name="line.1325"></a>
+<span class="sourceLineNo">1326</span>   * running<a name="line.1326"></a>
+<span class="sourceLineNo">1327</span>   * @throws IOException if we have a network issue<a name="line.1327"></a>
+<span class="sourceLineNo">1328</span>   * @throws org.apache.hadoop.hbase.snapshot.HBaseSnapshotException if the snapshot failed<a name="line.1328"></a>
+<span class="sourceLineNo">1329</span>   * @throws org.apache.hadoop.hbase.snapshot.UnknownSnapshotException if the requested snapshot is<a name="line.1329"></a>
+<span class="sourceLineNo">1330</span>   * unknown<a name="line.1330"></a>
+<span class="sourceLineNo">1331</span>   */<a name="line.1331"></a>
+<span class="sourceLineNo">1332</span>  boolean isSnapshotFinished(SnapshotDescription snapshot)<a name="line.1332"></a>
+<span class="sourceLineNo">1333</span>      throws IOException, HBaseSnapshotException, UnknownSnapshotException;<a name="line.1333"></a>
+<span class="sourceLineNo">1334</span><a name="line.1334"></a>
+<span class="sourceLineNo">1335</span>  /**<a name="line.1335"></a>
+<span class="sourceLineNo">1336</span>   * Restore the specified snapshot on the original table. (The table must be disabled) If the<a name="line.1336"></a>
+<span class="sourceLineNo">1337</span>   * "hbase.snapshot.restore.take.failsafe.snapshot" configuration property is set to<a name="line.1337"></a>
+<span class="sourceLineNo">1338</span>   * &lt;code&gt;true&lt;/code&gt;, a snapshot of the current table is taken before executing the restore<a name="line.1338"></a>
+<span class="sourceLineNo">1339</span>   * operation. In case of restore failure, the failsafe snapshot will be restored. If the restore<a name="line.1339"></a>
+<span class="sourceLineNo">1340</span>   * completes without problem the failsafe snapshot is deleted.<a name="line.1340"></a>
+<span class="sourceLineNo">1341</span>   * @param snapshotName name of the snapshot to restore<a name="line.1341"></a>
+<span class="sourceLineNo">1342</span>   * @throws IOException if a remote or network exception occurs<a name="line.1342"></a>
+<span class="sourceLineNo">1343</span>   * @throws RestoreSnapshotException if snapshot failed to be restored<a name="line.1343"></a>
+<span class="sourceLineNo">1344</span>   * @throws IllegalArgumentException if the restore request is formatted incorrectly<a name="line.1344"></a>
+<span class="sourceLineNo">1345</span>   */<a name="line.1345"></a>
+<span class="sourceLineNo">1346</span>  void restoreSnapshot(String snapshotName) throws IOException, RestoreSnapshotException;<a name="line.1346"></a>
+<span class="sourceLineNo">1347</span><a name="line.1347"></a>
+<span class="sourceLineNo">1348</span>  /**<a name="line.1348"></a>
+<span class="sourceLineNo">1349</span>   * Restore the specified snapshot on the original table. (The table must be disabled) If<a name="line.1349"></a>
+<span class="sourceLineNo">1350</span>   * 'takeFailSafeSnapshot' is set to &lt;code&gt;true&lt;/code&gt;, a snapshot of the current table is taken<a name="line.1350"></a>
+<span class="sourceLineNo">1351</span>   * before executing the restore operation. In case of restore failure, the failsafe snapshot will<a name="line.1351"></a>
+<span class="sourceLineNo">1352</span>   * be restored. If the restore completes without problem the failsafe snapshot is deleted. The<a name="line.1352"></a>
+<span class="sourceLineNo">1353</span>   * failsafe snapshot name is configurable by using the property<a name="line.1353"></a>
+<span class="sourceLineNo">1354</span>   * "hbase.snapshot.restore.failsafe.name".<a name="line.1354"></a>
+<span class="sourceLineNo">1355</span>   * @param snapshotName name of the snapshot to restore<a name="line.1355"></a>
+<span class="sourceLineNo">1356</span>   * @param takeFailSafeSnapshot &lt;code&gt;true&lt;/code&gt; if the failsafe snapshot should be taken<a name="line.1356"></a>
+<span class="sourceLineNo">1357</span>   * @throws IOException if a remote or network exception occurs<a name="line.1357"></a>
+<span class="sourceLineNo">1358</span>   * @throws RestoreSnapshotException if snapshot failed to be restored<a name="line.1358"></a>
+<span class="sourceLineNo">1359</span>   * @throws IllegalArgumentException if the restore request is formatted incorrectly<a name="line.1359"></a>
+<span class="sourceLineNo">1360</span>   */<a name="line.1360"></a>
+<span class="sourceLineNo">1361</span>  default void restoreSnapshot(String snapshotName, boolean takeFailSafeSnapshot)<a name="line.1361"></a>
+<span class="sourceLineNo">1362</span>      throws IOException, RestoreSnapshotException {<a name="line.1362"></a>
+<span class="sourceLineNo">1363</span>    restoreSnapshot(snapshotName, takeFailSafeSnapshot, false);<a name="line.1363"></a>
+<span class="sourceLineNo">1364</span>  }<a name="line.1364"></a>
+<span class="sourceLineNo">1365</span><a name="line.1365"></a>
+<span class="sourceLineNo">1366</span>  /**<a name="line.1366"></a>
+<span class="sourceLineNo">1367</span>   * Restore the specified snapshot on the original table. (The table must be disabled) If<a name="line.1367"></a>
+<span class="sourceLineNo">1368</span>   * 'takeFailSafeSnapshot' is set to &lt;code&gt;true&lt;/code&gt;, a snapshot of the current table is taken<a name="line.1368"></a>
+<span class="sourceLineNo">1369</span>   * before executing the restore operation. In case of restore failure, the failsafe snapshot will<a name="line.1369"></a>
+<span class="sourceLineNo">1370</span>   * be restored. If the restore completes without problem the failsafe snapshot is deleted. The<a name="line.1370"></a>
+<span class="sourceLineNo">1371</span>   * failsafe snapshot name is configurable by using the property<a name="line.1371"></a>
+<span class="sourceLineNo">1372</span>   * "hbase.snapshot.restore.failsafe.name".<a name="line.1372"></a>
+<span class="sourceLineNo">1373</span>   * @param snapshotName name of the snapshot to restore<a name="line.1373"></a>
+<span class="sourceLineNo">1374</span>   * @param takeFailSafeSnapshot &lt;code&gt;true&lt;/code&gt; if the failsafe snapshot should be taken<a name="line.1374"></a>
+<span class="sourceLineNo">1375</span>   * @param restoreAcl &lt;code&gt;true&lt;/code&gt; to restore acl of snapshot<a name="line.1375"></a>
+<span class="sourceLineNo">1376</span>   * @throws IOException if a remote or network exception occurs<a name="line.1376"></a>
+<span class="sourceLineNo">1377</span>   * @throws RestoreSnapshotException if snapshot failed to be restored<a name="line.1377"></a>
+<span class="sourceLineNo">1378</span>   * @throws IllegalArgumentException if the restore request is formatted incorrectly<a name="line.1378"></a>
+<span class="sourceLineNo">1379</span>   */<a name="line.1379"></a>
+<span class="sourceLineNo">1380</span>  void restoreSnapshot(String snapshotName, boolean takeFailSafeSnapshot, boolean restoreAcl)<a name="line.1380"></a>
+<span class="sourceLineNo">1381</span>      throws IOException, RestoreSnapshotException;<a name="line.1381"></a>
+<span class="sourceLineNo">1382</span><a name="line.1382"></a>
+<span class="sourceLineNo">1383</span>  /**<a name="line.1383"></a>
+<span class="sourceLineNo">1384</span>   * Create a new table by cloning the snapshot content.<a name="line.1384"></a>
+<span class="sourceLineNo">1385</span>   * @param snapshotName name of the snapshot to be cloned<a name="line.1385"></a>
+<span class="sourceLineNo">1386</span>   * @param tableName name of the table where the snapshot will be restored<a name="line.1386"></a>
+<span class="sourceLineNo">1387</span>   * @throws IOException if a remote or network exception occurs<a name="line.1387"></a>
+<span class="sourceLineNo">1388</span>   * @throws TableExistsException if table to be created already exists<a name="line.1388"></a>
+<span class="sourceLineNo">1389</span>   * @throws RestoreSnapshotException if snapshot failed to be cloned<a name="line.1389"></a>
+<span class="sourceLineNo">1390</span>   * @throws IllegalArgumentException if the specified table has not a valid name<a name="line.1390"></a>
+<span class="sourceLineNo">1391</span>   */<a name="line.1391"></a>
+<span class="sourceLineNo">1392</span>  default void cloneSnapshot(String snapshotName, TableName tableName)<a name="line.1392"></a>
+<span class="sourceLineNo">1393</span>      throws IOException, TableExistsException, RestoreSnapshotException {<a name="line.1393"></a>
+<span class="sourceLineNo">1394</span>    cloneSnapshot(snapshotName, tableName, false);<a name="line.1394"></a>
+<span class="sourceLineNo">1395</span>  }<a name="line.1395"></a>
+<span class="sourceLineNo">1396</span><a name="line.1396"></a>
+<span class="sourceLineNo">1397</span>  /**<a name="line.1397"></a>
+<span class="sourceLineNo">1398</span>   * Create a new table by cloning the snapshot content.<a name="line.1398"></a>
+<span class="sourceLineNo">1399</span>   * @param snapshotName name of the snapshot to be cloned<a name="line.1399"></a>
+<span class="sourceLineNo">1400</span>   * @param tableName name of the table where the snapshot will be restored<a name="line.1400"></a>
+<span class="sourceLineNo">1401</span>   * @param restoreAcl &lt;code&gt;true&lt;/code&gt; to clone acl into newly created table<a name="line.1401"></a>
+<span class="sourceLineNo">1402</span>   * @throws IOException if a remote or network exception occurs<a name="line.1402"></a>
+<span class="sourceLineNo">1403</span>   * @throws TableExistsException if table to be created already exists<a name="line.1403"></a>
+<span class="sourceLineNo">1404</span>   * @throws RestoreSnapshotException if snapshot failed to be cloned<a name="line.1404"></a>
+<span class="sourceLineNo">1405</span>   * @throws IllegalArgumentException if the specified table has not a valid name<a name="line.1405"></a>
+<span class="sourceLineNo">1406</span>   */<a name="line.1406"></a>
+<span class="sourceLineNo">1407</span>  default void cloneSnapshot(String snapshotName, TableName tableName, boolean restoreAcl)<a name="line.1407"></a>
+<span class="sourceLineNo">1408</span>      throws IOException, TableExistsException, RestoreSnapshotException {<a name="line.1408"></a>
+<span class="sourceLineNo">1409</span>    get(cloneSnapshotAsync(snapshotName, tableName, restoreAcl), getSyncWaitTimeout(),<a name="line.1409"></a>
+<span class="sourceLineNo">1410</span>      TimeUnit.MILLISECONDS);<a name="line.1410"></a>
+<span class="sourceLineNo">1411</span>  }<a name="line.1411"></a>
+<span class="sourceLineNo">1412</span><a name="line.1412"></a>
+<span class="sourceLineNo">1413</span>  /**<a name="line.1413"></a>
+<span class="sourceLineNo">1414</span>   * Create a new table by cloning the snapshot content, but does not block and wait for it to be<a name="line.1414"></a>
+<span class="sourceLineNo">1415</span>   * completely cloned. You can use Future.get(long, TimeUnit) to wait on the operation to complete.<a name="line.1415"></a>
+<span class="sourceLineNo">1416</span>   * It may throw ExecutionException if there was an error while executing the operation or<a name="line.1416"></a>
+<span class="sourceLineNo">1417</span>   * TimeoutException in case the wait timeout was not long enough to allow the operation to<a name="line.1417"></a>
+<span class="sourceLineNo">1418</span>   * complete.<a name="line.1418"></a>
+<span class="sourceLineNo">1419</span>   * @param snapshotName name of the snapshot to be cloned<a name="line.1419"></a>
+<span class="sourceLineNo">1420</span>   * @param tableName name of the table where the snapshot will be restored<a name="line.1420"></a>
+<span class="sourceLineNo">1421</span>   * @throws IOException if a remote or network exception occurs<a name="line.1421"></a>
+<span class="sourceLineNo">1422</span>   * @throws TableExistsException if table to be cloned already exists<a name="line.1422"></a>
+<span class="sourceLineNo">1423</span>   * @return the result of the async clone snapshot. You can use Future.get(long, TimeUnit) to wait<a name="line.1423"></a>
+<span class="sourceLineNo">1424</span>   *         on the operation to complete.<a name="line.1424"></a>
+<span class="sourceLineNo">1425</span>   */<a name="line.1425"></a>
+<span class="sourceLineNo">1426</span>  default Future&lt;Void&gt; cloneSnapshotAsync(String snapshotName, TableName tableName)<a name="line.1426"></a>
+<span class="sourceLineNo">1427</span>      throws IOException, TableExistsException {<a name="line.1427"></a>
+<span class="sourceLineNo">1428</span>    return cloneSnapshotAsync(snapshotName, tableName, false);<a name="line.1428"></a>
+<span class="sourceLineNo">1429</span>  }<a name="line.1429"></a>
+<span class="sourceLineNo">1430</span><a name="line.1430"></a>
+<span class="sourceLineNo">1431</span>  /**<a name="line.1431"></a>
+<span class="sourceLineNo">1432</span>   * Create a new table by cloning the snapshot content.<a name="line.1432"></a>
+<span class="sourceLineNo">1433</span>   * @param snapshotName name of the snapshot to be cloned<a name="line.1433"></a>
+<span class="sourceLineNo">1434</span>   * @param tableName name of the table where the snapshot will be restored<a name="line.1434"></a>
+<span class="sourceLineNo">1435</span>   * @param restoreAcl &lt;code&gt;true&lt;/code&gt; to clone acl into newly created table<a name="line.1435"></a>
+<span class="sourceLineNo">1436</span>   * @throws IOException if a remote or network exception occurs<a name="line.1436"></a>
+<span class="sourceLineNo">1437</span>   * @throws TableExistsException if table to be created already exists<a name="line.1437"></a>
+<span class="sourceLineNo">1438</span>   * @throws RestoreSnapshotException if snapshot failed to be cloned<a name="line.1438"></a>
+<span class="sourceLineNo">1439</span>   * @throws IllegalArgumentException if the specified table has not a valid name<a name="line.1439"></a>
+<span class="sourceLineNo">1440</span>   */<a name="line.1440"></a>
+<span class="sourceLineNo">1441</span>  Future&lt;Void&gt; cloneSnapshotAsync(String snapshotName, TableName tableName, boolean restoreAcl)<a name="line.1441"></a>
+<span class="sourceLineNo">1442</span>      throws IOException, TableExistsException, RestoreSnapshotException;<a name="line.1442"></a>
+<span class="sourceLineNo">1443</span><a name="line.1443"></a>
+<span class="sourceLineNo">1444</span>  /**<a name="line.1444"></a>
+<span class="sourceLineNo">1445</span>   * Execute a distributed procedure on a cluster.<a name="line.1445"></a>
+<span class="sourceLineNo">1446</span>   *<a name="line.1446"></a>
+<span class="sourceLineNo">1447</span>   * @param signature A distributed procedure is uniquely identified by its signature (default the<a name="line.1447"></a>
+<span class="sourceLineNo">1448</span>   * root ZK node name of the procedure).<a name="line.1448"></a>
+<span class="sourceLineNo">1449</span>   * @param instance The instance name of the procedure. For some procedures, this parameter is<a name="line.1449"></a>
+<span class="sourceLineNo">1450</span>   * optional.<a name="line.1450"></a>
+<span class="sourceLineNo">1451</span>   * @param props Property/Value pairs of properties passing to the procedure<a name="line.1451"></a>
+<span class="sourceLineNo">1452</span>   * @throws IOException<a name="line.1452"></a>
+<span class="sourceLineNo">1453</span>   */<a name="line.1453"></a>
+<span class="sourceLineNo">1454</span>  void execProcedure(String signature, String instance, Map&lt;String, String&gt; props)<a name="line.1454"></a>
+<span class="sourceLineNo">1455</span>      throws IOException;<a name="line.1455"></a>
+<span class="sourceLineNo">1456</span><a name="line.1456"></a>
+<span class="sourceLineNo">1457</span>  /**<a name="line.1457"></a>
+<span class="sourceLineNo">1458</span>   * Execute a distributed procedure on a cluster.<a name="line.1458"></a>
+<span class="sourceLineNo">1459</span>   *<a name="line.1459"></a>
+<span class="sourceLineNo">1460</span>   * @param signature A distributed procedure is uniquely identified by its signature (default the<a name="line.1460"></a>
+<span class="sourceLineNo">1461</span>   * root ZK node name of the procedure).<a name="line.1461"></a>
+<span class="sourceLineNo">1462</span>   * @param instance The instance name of the procedure. For some procedures, this parameter is<a name="line.1462"></a>
+<span class="sourceLineNo">1463</span>   * optional.<a name="line.1463"></a>
+<span class="sourceLineNo">1464</span>   * @param props Property/Value pairs of properties passing to the procedure<a name="line.1464"></a>
+<span class="sourceLineNo">1465</span>   * @return data returned after procedure execution. null if no return data.<a name="line.1465"></a>
+<span class="sourceLineNo">1466</span>   * @throws IOException<a name="line.1466"></a>
+<span class="sourceLineNo">1467</span>   */<a name="line.1467"></a>
+<span class="sourceLineNo">1468</span>  byte[] execProcedureWithReturn(String signature, String instance, Map&lt;String, String&gt; props)<a name="line.1468"></a>
+<span class="sourceLineNo">1469</span>      throws IOException;<a name="line.1469"></a>
+<span class="sourceLineNo">1470</span><a name="line.1470"></a>
+<span class="sourceLineNo">1471</span>  /**<a name="line.1471"></a>
+<span class="sourceLineNo">1472</span>   * Check the current state of the specified procedure. There are three possible states: &lt;ol&gt;<a name="line.1472"></a>
+<span class="sourceLineNo">1473</span>   * &lt;li&gt;running - returns &lt;tt&gt;false&lt;/tt&gt;&lt;/li&gt; &lt;li&gt;finished - returns &lt;tt&gt;true&lt;/tt&gt;&lt;/li&gt;<a name="line.1473"></a>
+<span class="sourceLineNo">1474</span>   * &lt;li&gt;finished with error - throws the exception that caused the procedure to fail&lt;/li&gt; &lt;/ol&gt;<a name="line.1474"></a>
+<span class="sourceLineNo">1475</span>   *<a name="line.1475"></a>
+<span class="sourceLineNo">1476</span>   * @param signature The signature that uniquely identifies a procedure<a name="line.1476"></a>
+<span class="sourceLineNo">1477</span>   * @param instance The instance name of the procedure<a name="line.1477"></a>
+<span class="sourceLineNo">1478</span>   * @param props Property/Value pairs of properties passing to the procedure<a name="line.1478"></a>
+<span class="sourceLineNo">1479</span>   * @return &lt;code&gt;true&lt;/code&gt; if the specified procedure is finished successfully, &lt;code&gt;false&lt;/code&gt; if it is still running<a name="line.1479"></a>
+<span class="sourceLineNo">1480</span>   * @throws IOException if the specified procedure finished with error<a name="line.1480"></a>
+<span class="sourceLineNo">1481</span>   */<a name="line.1481"></a>
+<span class="sourceLineNo">1482</span>  boolean isProcedureFinished(String signature, String instance, Map&lt;String, String&gt; props)<a name="line.1482"></a>
+<span class="sourceLineNo">1483</span>      throws IOException;<a name="line.1483"></a>
+<span class="sourceLineNo">1484</span><a name="line.1484"></a>
+<span class="sourceLineNo">1485</span>  /**<a name="line.1485"></a>
+<span class="sourceLineNo">1486</span>   * List completed snapshots.<a name="line.1486"></a>
+<span class="sourceLineNo">1487</span>   *<a name="line.1487"></a>
+<span class="sourceLineNo">1488</span>   * @return a list of snapshot descriptors for completed snapshots<a name="line.1488"></a>
+<span class="sourceLineNo">1489</span>   * @throws IOException if a network error occurs<a name="line.1489"></a>
+<span class="sourceLineNo">1490</span>   */<a name="line.1490"></a>
+<span class="sourceLineNo">1491</span>  List&lt;SnapshotDescription&gt; listSnapshots() throws IOException;<a name="line.1491"></a>
+<span class="sourceLineNo">1492</span><a name="line.1492"></a>
+<span class="sourceLineNo">1493</span>  /**<a name="line.1493"></a>
+<span class="sourceLineNo">1494</span>   * List all the completed snapshots matching the given pattern.<a name="line.1494"></a>
+<span class="sourceLineNo">1495</span>   *<a name="line.1495"></a>
+<span class="sourceLineNo">1496</span>   * @param pattern The compiled regular expression to match against<a name="line.1496"></a>
+<span class="sourceLineNo">1497</span>   * @return list of SnapshotDescription<a name="line.1497"></a>
+<span class="sourceLineNo">1498</span>   * @throws IOException if a remote or network exception occurs<a name="line.1498"></a>
+<span class="sourceLineNo">1499</span>   */<a name="line.1499"></a>
+<span class="sourceLineNo">1500</span>  List&lt;SnapshotDescription&gt; listSnapshots(Pattern pattern) throws IOException;<a name="line.1500"></a>
+<span class="sourceLineNo">1501</span><a name="line.1501"></a>
+<span class="sourceLineNo">1502</span>  /**<a name="line.1502"></a>
+<span class="sourceLineNo">1503</span>   * List all the completed snapshots matching the given table name regular expression and snapshot<a name="line.1503"></a>
+<span class="sourceLineNo">1504</span>   * name regular expression.<a name="line.1504"></a>
+<span class="sourceLineNo">1505</span>   * @param tableNamePattern The compiled table name regular expression to match against<a name="line.1505"></a>
+<span class="sourceLineNo">1506</span>   * @param snapshotNamePattern The compiled snapshot name regular expression to match against<a name="line.1506"></a>
+<span class="sourceLineNo">1507</span>   * @return list of completed SnapshotDescription<a name="line.1507"></a>
+<span class="sourceLineNo">1508</span>   * @throws IOException if a remote or network exception occurs<a name="line.1508"></a>
+<span class="sourceLineNo">1509</span>   */<a name="line.1509"></a>
+<span class="sourceLineNo">1510</span>  List&lt;SnapshotDescription&gt; listTableSnapshots(Pattern tableNamePattern,<a name="line.1510"></a>
+<span class="sourceLineNo">1511</span>      Pattern snapshotNamePattern) throws IOException;<a name="line.1511"></a>
+<span class="sourceLineNo">1512</span><a name="line.1512"></a>
+<span class="sourceLineNo">1513</span>  /**<a name="line.1513"></a>
+<span class="sourceLineNo">1514</span>   * Delete an existing snapshot.<a name="line.1514"></a>
+<span class="sourceLineNo">1515</span>   *<a name="line.1515"></a>
+<span class="sourceLineNo">1516</span>   * @param snapshotName name of the snapshot<a name="line.1516"></a>
+<span class="sourceLineNo">1517</span>   * @throws IOException if a remote or network exception occurs<a name="line.1517"></a>
+<span class="sourceLineNo">1518</span>   */<a name="line.1518"></a>
+<span class="sourceLineNo">1519</span>  void deleteSnapshot(String snapshotName) throws IOException;<a name="line.1519"></a>
+<span class="sourceLineNo">1520</span><a name="line.1520"></a>
+<span class="sourceLineNo">1521</span>  /**<a name="line.1521"></a>
+<span class="sourceLineNo">1522</span>   * Delete existing snapshots whose names match the pattern passed.<a name="line.1522"></a>
+<span class="sourceLineNo">1523</span>   *<a name="line.1523"></a>
+<span class="sourceLineNo">1524</span>   * @param pattern pattern for names of the snapshot to match<a name="line.1524"></a>
+<span class="sourceLineNo">1525</span>   * @throws IOException if a remote or network exception occurs<a name="line.1525"></a>
+<span class="sourceLineNo">1526</span>   */<a name="line.1526"></a>
+<span class="sourceLineNo">1527</span>  void deleteSnapshots(Pattern pattern) throws IOException;<a name="line.1527"></a>
+<span class="sourceLineNo">1528</span><a name="line.1528"></a>
+<span class="sourceLineNo">1529</span>  /**<a name="line.1529"></a>
+<span class="sourceLineNo">1530</span>   * Delete all existing snapshots matching the given table name regular expression and snapshot<a name="line.1530"></a>
+<span class="sourceLineNo">1531</span>   * name regular expression.<a name="line.1531"></a>
+<span class="sourceLineNo">1532</span>   * @param tableNamePattern The compiled table name regular expression to match against<a name="line.1532"></a>
+<span class="sourceLineNo">1533</span>   * @param snapshotNamePattern The compiled snapshot name regular expression to match against<a name="line.1533"></a>
+<span class="sourceLineNo">1534</span>   * @throws IOException if a remote or network exception occurs<a name="line.1534"></a>
+<span class="sourceLineNo">1535</span>   */<a name="line.1535"></a>
+<span class="sourceLineNo">1536</span>  void deleteTableSnapshots(Pattern tableNamePattern, Pattern snapshotNamePattern)<a name="line.1536"></a>
+<span class="sourceLineNo">1537</span>      throws IOException;<a name="line.1537"></a>
+<span class="sourceLineNo">1538</span><a name="line.1538"></a>
+<span class="sourceLineNo">1539</span>  /**<a name="line.1539"></a>
+<span class="sourceLineNo">1540</span>   * Apply the new quota settings.<a name="line.1540"></a>
+<span class="sourceLineNo">1541</span>   *<a name="line.1541"></a>
+<span class="sourceLineNo">1542</span>   * @param quota the quota settings<a name="line.1542"></a>
+<span class="sourceLineNo">1543</span>   * @throws IOException if a remote or network exception occurs<a name="line.1543"></a>
+<span class="sourceLineNo">1544</span>   */<a name="line.1544"></a>
+<span class="sourceLineNo">1545</span>  void setQuota(QuotaSettings quota) throws IOException;<a name="line.1545"></a>
+<span class="sourceLineNo">1546</span><a name="line.1546"></a>
+<span class="sourceLineNo">1547</span>  /**<a name="line.1547"></a>
+<span class="sourceLineNo">1548</span>   * List the quotas based on the filter.<a name="line.1548"></a>
+<span class="sourceLineNo">1549</span>   * @param filter the quota settings filter<a name="line.1549"></a>
+<span class="sourceLineNo">1550</span>   * @return the QuotaSetting list<a name="line.1550"></a>
+<span class="sourceLineNo">1551</span>   * @throws IOException if a remote or network exception occurs<a name="line.1551"></a>
+<span class="sourceLineNo">1552</span>   */<a name="line.1552"></a>
+<span class="sourceLineNo">1553</span>  List&lt;QuotaSettings&gt; getQuota(QuotaFilter filter) throws IOException;<a name="line.1553"></a>
+<span class="sourceLineNo">1554</span><a name="line.1554"></a>
+<span class="sourceLineNo">1555</span>  /**<a name="line.1555"></a>
+<span class="sourceLineNo">1556</span>   * Creates and returns a {@link com.google.protobuf.RpcChannel} instance connected to the active<a name="line.1556"></a>
+<span class="sourceLineNo">1557</span>   * master. &lt;p&gt; The obtained {@link com.google.protobuf.RpcChannel} instance can be used to access<a name="line.1557"></a>
+<span class="sourceLineNo">1558</span>   * a published coprocessor {@link com.google.protobuf.Service} using standard protobuf service<a name="line.1558"></a>
+<span class="sourceLineNo">1559</span>   * invocations: &lt;/p&gt; &lt;div style="background-color: #cccccc; padding: 2px"&gt;<a name="line.1559"></a>
+<span class="sourceLineNo">1560</span>   * &lt;blockquote&gt;&lt;pre&gt;<a name="line.1560"></a>
+<span class="sourceLineNo">1561</span>   * CoprocessorRpcChannel channel = myAdmin.coprocessorService();<a name="line.1561"></a>
+<span class="sourceLineNo">1562</span>   * MyService.BlockingInterface service = MyService.newBlockingStub(channel);<a name="line.1562"></a>
+<span class="sourceLineNo">1563</span>   * MyCallRequest request = MyCallRequest.newBuilder()<a name="line.1563"></a>
+<span class="sourceLineNo">1564</span>   *     ...<a name="line.1564"></a>
+<span class="sourceLineNo">1565</span>   *     .build();<a name="line.1565"></a>
+<span class="sourceLineNo">1566</span>   * MyCallResponse response = service.myCall(null, request);<a name="line.1566"></a>
+<span class="sourceLineNo">1567</span>   * &lt;/pre&gt;&lt;/blockquote&gt;&lt;/div&gt;<a name="line.1567"></a>
+<span class="sourceLineNo">1568</span>   *<a name="line.1568"></a>
+<span class="sourceLineNo">1569</span>   * @return A MasterCoprocessorRpcChannel instance<a name="line.1569"></a>
+<span class="sourceLineNo">1570</span>   */<a name="line.1570"></a>
+<span class="sourceLineNo">1571</span>  CoprocessorRpcChannel coprocessorService();<a name="line.1571"></a>
 <span class="sourceLineNo">1572</span><a name="line.1572"></a>
-<span class="sourceLineNo">1573</span>  /**<a name="line.1573"></a>
-<span class="sourceLineNo">1574</span>   * Creates and returns a {@link com.google.protobuf.RpcChannel} instance<a name="line.1574"></a>
-<span class="sourceLineNo">1575</span>   * connected to the passed region server.<a name="line.1575"></a>
-<span class="sourceLineNo">1576</span>   *<a name="line.1576"></a>
-<span class="sourceLineNo">1577</span>   * &lt;p&gt;<a name="line.1577"></a>
-<span class="sourceLineNo">1578</span>   * The obtained {@link com.google.protobuf.RpcChannel} instance can be used to access a published<a name="line.1578"></a>
-<span class="sourceLineNo">1579</span>   * coprocessor {@link com.google.protobuf.Service} using standard protobuf service invocations:<a name="line.1579"></a>
-<span class="sourceLineNo">1580</span>   * &lt;/p&gt;<a name="line.1580"></a>
-<span class="sourceLineNo">1581</span>   *<a name="line.1581"></a>
-<span class="sourceLineNo">1582</span>   * &lt;div style="background-color: #cccccc; padding: 2px"&gt;<a name="line.1582"></a>
-<span class="sourceLineNo">1583</span>   * &lt;blockquote&gt;&lt;pre&gt;<a name="line.1583"></a>
-<span class="sourceLineNo">1584</span>   * CoprocessorRpcChannel channel = myAdmin.coprocessorService(serverName);<a name="line.1584"></a>
-<span class="sourceLineNo">1585</span>   * MyService.BlockingInterface service = MyService.newBlockingStub(channel);<a name="line.1585"></a>
-<span class="sourceLineNo">1586</span>   * MyCallRequest request = MyCallRequest.newBuilder()<a name="line.1586"></a>
-<span class="sourceLineNo">1587</span>   *     ...<a name="line.1587"></a>
-<span class="sourceLineNo">1588</span>   *     .build();<a name="line.1588"></a>
-<span class="sourceLineNo">1589</span>   * MyCallResponse response = service.myCall(null, request);<a name="line.1589"></a>
-<span class="sourceLineNo">1590</span>   * &lt;/pre&gt;&lt;/blockquote&gt;&lt;/div&gt;<a name="line.1590"></a>
-<span class="sourceLineNo">1591</span>   *<a name="line.1591"></a>
-<span class="sourceLineNo">1592</span>   * @param serverName the server name to which the endpoint call is made<a name="line.1592"></a>
-<span class="sourceLineNo">1593</span>   * @return A RegionServerCoprocessorRpcChannel instance<a name="line.1593"></a>
-<span class="sourceLineNo">1594</span>   */<a name="line.1594"></a>
-<span class="sourceLineNo">1595</span>  CoprocessorRpcChannel coprocessorService(ServerName serverName);<a name="line.1595"></a>
-<span class="sourceLineNo">1596</span><a name="line.1596"></a>
+<span class="sourceLineNo">1573</span><a name="line.1573"></a>
+<span class="sourceLineNo">1574</span>  /**<a name="line.1574"></a>
+<span class="sourceLineNo">1575</span>   * Creates and returns a {@link com.google.protobuf.RpcChannel} instance<a name="line.1575"></a>
+<span class="sourceLineNo">1576</span>   * connected to the passed region server.<a name="line.1576"></a>
+<span class="sourceLineNo">1577</span>   *<a name="line.1577"></a>
+<span class="sourceLineNo">1578</span>   * &lt;p&gt;<a name="line.1578"></a>
+<span class="sourceLineNo">1579</span>   * The obtained {@link com.google.protobuf.RpcChannel} instance can be used to access a published<a name="line.1579"></a>
+<span class="sourceLineNo">1580</span>   * coprocessor {@link com.google.protobuf.Service} using standard protobuf service invocations:<a name="line.1580"></a>
+<span class="sourceLineNo">1581</span>   * &lt;/p&gt;<a name="line.1581"></a>
+<span class="sourceLineNo">1582</span>   *<a name="line.1582"></a>
+<span class="sourceLineNo">1583</span>   * &lt;div style="background-color: #cccccc; padding: 2px"&gt;<a name="line.1583"></a>
+<span class="sourceLineNo">1584</span>   * &lt;blockquote&gt;&lt;pre&gt;<a name="line.1584"></a>
+<span class="sourceLineNo">1585</span>   * CoprocessorRpcChannel channel = myAdmin.coprocessorService(serverName);<a name="line.1585"></a>
+<span class="sourceLineNo">1586</span>   * MyService.BlockingInterface service = MyService.newBlockingStub(channel);<a name="line.1586"></a>
+<span class="sourceLineNo">1587</span>   * MyCallRequest request = MyCallRequest.newBuilder()<a name="line.1587"></a>
+<span class="sourceLineNo">1588</span>   *     ...<a name="line.1588"></a>
+<span class="sourceLineNo">1589</span>   *     .build();<a name="line.1589"></a>
+<span class="sourceLineNo">1590</span>   * MyCallResponse response = service.myCall(null, request);<a name="line.1590"></a>
+<span class="sourceLineNo">1591</span>   * &lt;/pre&gt;&lt;/blockquote&gt;&lt;/div&gt;<a name="line.1591"></a>
+<span class="sourceLineNo">1592</span>   *<a name="line.1592"></a>
+<span class="sourceLineNo">1593</span>   * @param serverName the server name to which the endpoint call is made<a name="line.1593"></a>
+<span class="sourceLineNo">1594</span>   * @return A RegionServerCoprocessorRpcChannel instance<a name="line.1594"></a>
+<span class="sourceLineNo">1595</span>   */<a name="line.1595"></a>
+<span class="sourceLineNo">1596</span>  CoprocessorRpcChannel coprocessorService(ServerName serverName);<a name="line.1596"></a>
 <span class="sourceLineNo">1597</span><a name="line.1597"></a>
-<span class="sourceLineNo">1598</span>  /**<a name="line.1598"></a>
-<span class="sourceLineNo">1599</span>   * Update the configuration and trigger an online config change<a name="line.1599"></a>
-<span class="sourceLineNo">1600</span>   * on the regionserver.<a name="line.1600"></a>
-<span class="sourceLineNo">1601</span>   * @param server : The server whose config needs to be updated.<a name="line.1601"></a>
-<span class="sourceLineNo">1602</span>   * @throws IOException<a name="line.1602"></a>
-<span class="sourceLineNo">1603</span>   */<a name="line.1603"></a>
-<span class="sourceLineNo">1604</span>  void updateConfiguration(ServerName server) throws IOException;<a name="line.1604"></a>
-<span class="sourceLineNo">1605</span><a name="line.1605"></a>
+<span class="sourceLineNo">1598</span><a name="line.1598"></a>
+<span class="sourceLineNo">1599</span>  /**<a name="line.1599"></a>
+<span class="sourceLineNo">1600</span>   * Update the configuration and trigger an online config change<a name="line.1600"></a>
+<span class="sourceLineNo">1601</span>   * on the regionserver.<a name="line.1601"></a>
+<span class="sourceLineNo">1602</span>   * @param server : The server whose config needs to be updated.<a name="line.1602"></a>
+<span class="sourceLineNo">1603</span>   * @throws IOException<a name="line.1603"></a>
+<span class="sourceLineNo">1604</span>   */<a name="line.1604"></a>
+<span class="sourceLineNo">1605</span>  void updateConfiguration(ServerName server) throws IOException;<a name="line.1605"></a>
 <span class="sourceLineNo">1606</span><a name="line.1606"></a>
-<span class="sourceLineNo">1607</span>  /**<a name="line.1607"></a>
-<span class="sourceLineNo">1608</span>   * Update the configuration and trigger an online config change<a name="line.1608"></a>
-<span class="sourceLineNo">1609</span>   * on all the regionservers.<a name="line.1609"></a>
-<span class="sourceLineNo">1610</span>   * @throws IOException<a name="line.1610"></a>
-<span class="sourceLineNo">1611</span>   */<a name="line.1611"></a>
-<span class="sourceLineNo">1612</span>  void updateConfiguration() throws IOException;<a name="line.1612"></a>
-<span class="sourceLineNo">1613</span><a name="line.1613"></a>
-<span class="sourceLineNo">1614</span>  /**<a name="line.1614"></a>
-<span class="sourceLineNo">1615</span>   * Get the info port of the current master if one is available.<a name="line.1615"></a>
-<span class="sourceLineNo">1616</span>   * @return master info port<a name="line.1616"></a>
-<span class="sourceLineNo">1617</span>   * @throws IOException<a name="line.1617"></a>
-<span class="sourceLineNo">1618</span>   */<a name="line.1618"></a>
-<span class="sourceLineNo">1619</span>  default int getMasterInfoPort() throws IOException {<a name="line.1619"></a>
-<span class="sourceLineNo">1620</span>    return getClusterMetrics(EnumSet.of(Option.MASTER_INFO_PORT)).getMasterInfoPort();<a name="line.1620"></a>
-<span class="sourceLineNo">1621</span>  }<a name="line.1621"></a>
-<span class="sourceLineNo">1622</span><a name="line.1622"></a>
-<span class="sourceLineNo">1623</span>  /**<a name="line.1623"></a>
-<span class="sourceLineNo">1624</span>   * Return the set of supported security capabilities.<a name="line.1624"></a>
-<span class="sourceLineNo">1625</span>   * @throws IOException<a name="line.1625"></a>
-<span class="sourceLineNo">1626</span>   * @throws UnsupportedOperationException<a name="line.1626"></a>
-<span class="sourceLineNo">1627</span>   */<a name="line.1627"></a>
-<span class="sourceLineNo">1628</span>  List&lt;SecurityCapability&gt; getSecurityCapabilities() throws IOException;<a name="line.1628"></a>
-<span class="sourceLineNo">1629</span><a name="line.1629"></a>
-<span class="sourceLineNo">1630</span>  /**<a name="line.1630"></a>
-<span class="sourceLineNo">1631</span>   * Turn the split switch on or off.<a name="line.1631"></a>
-<span class="sourceLineNo">1632</span>   * @param enabled enabled or not<a name="line.1632"></a>
-<span class="sourceLineNo">1633</span>   * @param synchronous If &lt;code&gt;true&lt;/code&gt;, it waits until current split() call, if outstanding,<a name="line.1633"></a>
-<span class="sourceLineNo">1634</span>   *          to return.<a name="line.1634"></a>
-<span class="sourceLineNo">1635</span>   * @return Previous switch value<a name="line.1635"></a>
-<span class="sourceLineNo">1636</span>   */<a name="line.1636"></a>
-<span class="sourceLineNo">1637</span>  boolean splitSwitch(boolean enabled, boolean synchronous) throws IOException;<a name="line.1637"></a>
-<span class="sourceLineNo">1638</span><a name="line.1638"></a>
-<span class="sourceLineNo">1639</span>  /**<a name="line.1639"></a>
-<span class="sourceLineNo">1640</span>   * Turn the merge switch on or off.<a name="line.1640"></a>
-<span class="sourceLineNo">1641</span>   * @param enabled enabled or not<a name="line.1641"></a>
-<span class="sourceLineNo">1642</span>   * @param synchronous If &lt;code&gt;true&lt;/code&gt;, it waits until current merge() call, if outstanding,<a name="line.1642"></a>
-<span class="sourceLineNo">1643</span>   *          to return.<a name="line.1643"></a>
-<span class="sourceLineNo">1644</span>   * @return Previous switch value<a name="line.1644"></a>
-<span class="sourceLineNo">1645</span>   */<a name="line.1645"></a>
-<span class="sourceLineNo">1646</span>  boolean mergeSwitch(boolean enabled, boolean synchronous) throws IOException;<a name="line.1646"></a>
-<span class="sourceLineNo">1647</span><a name="line.1647"></a>
-<span class="sourceLineNo">1648</span>  /**<a name="line.1648"></a>
-<span class="sourceLineNo">1649</span>   * Query the current state of the split switch.<a name="line.1649"></a>
-<span class="sourceLineNo">1650</span>   * @return &lt;code&gt;true&lt;/code&gt; if the switch is enabled, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.1650"></a>
-<span class="sourceLineNo">1651</span>   */<a name="line.1651"></a>
-<span class="sourceLineNo">1652</span>  boolean isSplitEnabled() throws IOException;<a name="line.1652"></a>
-<span class="sourceLineNo">1653</span><a name="line.1653"></a>
-<span class="sourceLineNo">1654</span>  /**<a name="line.1654"></a>
-<span class="sourceLineNo">1655</span>   * Query the current state of the merge switch.<a name="line.1655"></a>
-<span class="sourceLineNo">1656</span>   * @return &lt;code&gt;true&lt;/code&gt; if the switch is enabled, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.1656"></a>
-<span class="sourceLineNo">1657</span>   */<a name="line.1657"></a>
-<span class="sourceLineNo">1658</span>  boolean isMergeEnabled() throws IOException;<a name="line.1658"></a>
-<span class="sourceLineNo">1659</span><a name="line.1659"></a>
-<span class="sourceLineNo">1660</span>  /**<a name="line.1660"></a>
-<span class="sourceLineNo">1661</span>   * Add a new replication peer for replicating data to slave cluster.<a name="line.1661"></a>
-<span class="sourceLineNo">1662</span>   * @param peerId a short name that identifies the peer<a name="line.1662"></a>
-<span class="sourceLineNo">1663</span>   * @param peerConfig configuration for the replication peer<a name="line.1663"></a>
-<span class="sourceLineNo">1664</span>   * @throws IOException if a remote or network exception occurs<a name="line.1664"></a>
-<span class="sourceLineNo">1665</span>   */<a name="line.1665"></a>
-<span class="sourceLineNo">1666</span>  default void addReplicationPeer(String peerId, ReplicationPeerConfig peerConfig)<a name="line.1666"></a>
-<span class="sourceLineNo">1667</span>      throws IOException {<a name="line.1667"></a>
-<span class="sourceLineNo">1668</span>    addReplicationPeer(peerId, peerConfig, true);<a name="line.1668"></a>
-<span class="sourceLineNo">1669</span>  }<a name="line.1669"></a>
-<span class="sourceLineNo">1670</span><a name="line.1670"></a>
-<span class="sourceLineNo">1671</span>  /**<a name="line.1671"></a>
-<span class="sourceLineNo">1672</span>   * Add a new replication peer for replicating data to slave cluster.<a name="line.1672"></a>
-<span class="sourceLineNo">1673</span>   * @param peerId a short name that identifies the peer<a name="line.1673"></a>
-<span class="sourceLineNo">1674</span>   * @param peerConfig configuration for the replication peer<a name="line.1674"></a>
-<span class="sourceLineNo">1675</span>   * @param enabled peer state, true if ENABLED and false if DISABLED<a name="line.1675"></a>
-<span class="sourceLineNo">1676</span>   * @throws IOException if a remote or network exception occurs<a name="line.1676"></a>
-<span class="sourceLineNo">1677</span>   */<a name="line.1677"></a>
-<span class="sourceLineNo">1678</span>  default void addReplicationPeer(String peerId, ReplicationPeerConfig peerConfig, boolean enabled)<a name="line.1678"></a>
-<span class="sourceLineNo">1679</span>      throws IOException {<a name="line.1679"></a>
-<span class="sourceLineNo">1680</span>    get(addReplicationPeerAsync(peerId, peerConfig, enabled), getSyncWaitTimeout(),<a name="line.1680"></a>
-<span class="sourceLineNo">1681</span>      TimeUnit.MILLISECONDS);<a name="line.1681"></a>
-<span class="sourceLineNo">1682</span>  }<a name="line.1682"></a>
-<span class="sourceLineNo">1683</span><a name="line.1683"></a>
-<span class="sourceLineNo">1684</span>  /**<a name="line.1684"></a>
-<span class="sourceLineNo">1685</span>   * Add a new replication peer but does not block and wait for it.<a name="line.1685"></a>
-<span class="sourceLineNo">1686</span>   * &lt;p/&gt;<a name="line.1686"></a>
-<span class="sourceLineNo">1687</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1687"></a>
-<span class="sourceLineNo">1688</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1688"></a>
-<span class="sourceLineNo">1689</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1689"></a>
-<span class="sourceLineNo">1690</span>   * @param peerId a short name that identifies the peer<a name="line.1690"></a>
-<span class="sourceLineNo">1691</span>   * @param peerConfig configuration for the replication peer<a name="line.1691"></a>
-<span class="sourceLineNo">1692</span>   * @return the result of the async operation<a name="line.1692"></a>
-<span class="sourceLineNo">1693</span>   * @throws IOException IOException if a remote or network exception occurs<a name="line.1693"></a>
-<span class="sourceLineNo">1694</span>   */<a name="line.1694"></a>
-<span class="sourceLineNo">1695</span>  default Future&lt;Void&gt; addReplicationPeerAsync(String peerId, ReplicationPeerConfig peerConfig)<a name="line.1695"></a>
-<span class="sourceLineNo">1696</span>      throws IOException {<a name="line.1696"></a>
-<span class="sourceLineNo">1697</span>    return addReplicationPeerAsync(peerId, peerConfig, true);<a name="line.1697"></a>
-<span class="sourceLineNo">1698</span>  }<a name="line.1698"></a>
-<span class="sourceLineNo">1699</span><a name="line.1699"></a>
-<span class="sourceLineNo">1700</span>  /**<a name="line.1700"></a>
-<span class="sourceLineNo">1701</span>   * Add a new replication peer but does not block and wait for it.<a name="line.1701"></a>
-<span class="sourceLineNo">1702</span>   * &lt;p&gt;<a name="line.1702"></a>
-<span class="sourceLineNo">1703</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1703"></a>
-<span class="sourceLineNo">1704</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1704"></a>
-<span class="sourceLineNo">1705</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1705"></a>
-<span class="sourceLineNo">1706</span>   * @param peerId a short name that identifies the peer<a name="line.1706"></a>
-<span class="sourceLineNo">1707</span>   * @param peerConfig configuration for the replication peer<a name="line.1707"></a>
-<span class="sourceLineNo">1708</span>   * @param enabled peer state, true if ENABLED and false if DISABLED<a name="line.1708"></a>
-<span class="sourceLineNo">1709</span>   * @return the result of the async operation<a name="line.1709"></a>
-<span class="sourceLineNo">1710</span>   * @throws IOException IOException if a remote or network exception occurs<a name="line.1710"></a>
-<span class="sourceLineNo">1711</span>   */<a name="line.1711"></a>
-<span class="sourceLineNo">1712</span>  Future&lt;Void&gt; addReplicationPeerAsync(String peerId, ReplicationPeerConfig peerConfig,<a name="line.1712"></a>
-<span class="sourceLineNo">1713</span>      boolean enabled) throws IOException;<a name="line.1713"></a>
-<span class="sourceLineNo">1714</span><a name="line.1714"></a>
-<span class="sourceLineNo">1715</span>  /**<a name="line.1715"></a>
-<span class="sourceLineNo">1716</span>   * Remove a peer and stop the replication.<a name="line.1716"></a>
-<span class="sourceLineNo">1717</span>   * @param peerId a short name that identifies the peer<a name="line.1717"></a>
-<span class="sourceLineNo">1718</span>   * @throws IOException if a remote or network exception occurs<a name="line.1718"></a>
-<span class="sourceLineNo">1719</span>   */<a name="line.1719"></a>
-<span class="sourceLineNo">1720</span>  default void removeReplicationPeer(String peerId) throws IOException {<a name="line.1720"></a>
-<span class="sourceLineNo">1721</span>    get(removeReplicationPeerAsync(peerId), getSyncWaitTimeout(),<a name="line.1721"></a>
-<span class="sourceLineNo">1722</span>      TimeUnit.MILLISECONDS);<a name="line.1722"></a>
-<span class="sourceLineNo">1723</span>  }<a name="line.1723"></a>
-<span class="sourceLineNo">1724</span><a name="line.1724"></a>
-<span class="sourceLineNo">1725</span>  /**<a name="line.1725"></a>
-<span class="sourceLineNo">1726</span>   * Remove a replication peer but does not block and wait for it.<a name="line.1726"></a>
-<span class="sourceLineNo">1727</span>   * &lt;p&gt;<a name="line.1727"></a>
-<span class="sourceLineNo">1728</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1728"></a>
-<span class="sourceLineNo">1729</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1729"></a>
-<span class="sourceLineNo">1730</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1730"></a>
-<span class="sourceLineNo">1731</span>   * @param peerId a short name that identifies the peer<a name="line.1731"></a>
-<span class="sourceLineNo">1732</span>   * @return the result of the async operation<a name="line.1732"></a>
-<span class="sourceLineNo">1733</span>   * @throws IOException IOException if a remote or network exception occurs<a name="line.1733"></a>
-<span class="sourceLineNo">1734</span>   */<a name="line.1734"></a>
-<span class="sourceLineNo">1735</span>  Future&lt;Void&gt; removeReplicationPeerAsync(String peerId) throws IOException;<a name="line.1735"></a>
-<span class="sourceLineNo">1736</span><a name="line.1736"></a>
-<span class="sourceLineNo">1737</span>  /**<a name="line.1737"></a>
-<span class="sourceLineNo">1738</span>   * Restart the replication stream to the specified peer.<a name="line.1738"></a>
-<span class="sourceLineNo">1739</span>   * @param peerId a short name that identifies the peer<a name="line.1739"></a>
-<span class="sourceLineNo">1740</span>   * @throws IOException if a remote or network exception occurs<a name="line.1740"></a>
-<span class="sourceLineNo">1741</span>   */<a name="line.1741"></a>
-<span class="sourceLineNo">1742</span>  default void enableReplicationPeer(String peerId) throws IOException {<a name="line.1742"></a>
-<span class="sourceLineNo">1743</span>    get(enableReplicationPeerAsync(peerId), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.1743"></a>
-<span class="sourceLineNo">1744</span>  }<a name="line.1744"></a>
-<span class="sourceLineNo">1745</span><a name="line.1745"></a>
-<span class="sourceLineNo">1746</span>  /**<a name="line.1746"></a>
-<span class="sourceLineNo">1747</span>   * Enable a replication peer but does not block and wait for it.<a name="line.1747"></a>
-<span class="sourceLineNo">1748</span>   * &lt;p&gt;<a name="line.1748"></a>
-<span class="sourceLineNo">1749</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1749"></a>
-<span class="sourceLineNo">1750</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1750"></a>
-<span class="sourceLineNo">1751</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1751"></a>
-<span class="sourceLineNo">1752</span>   * @param peerId a short name that identifies the peer<a name="line.1752"></a>
-<span class="sourceLineNo">1753</span>   * @return the result of the async operation<a name="line.1753"></a>
-<span class="sourceLineNo">1754</span>   * @throws IOException IOException if a remote or network exception occurs<a name="line.1754"></a>
-<span class="sourceLineNo">1755</span>   */<a name="line.1755"></a>
-<span class="sourceLineNo">1756</span>  Future&lt;Void&gt; enableReplicationPeerAsync(String peerId) throws IOException;<a name="line.1756"></a>
-<span class="sourceLineNo">1757</span><a name="line.1757"></a>
-<span class="sourceLineNo">1758</span>  /**<a name="line.1758"></a>
-<span class="sourceLineNo">1759</span>   * Stop the replication stream to the specified peer.<a name="line.1759"></a>
-<span class="sourceLineNo">1760</span>   * @param peerId a short name that identifies the peer<a name="line.1760"></a>
-<span class="sourceLineNo">1761</span>   * @throws IOException if a remote or network exception occurs<a name="line.1761"></a>
-<span class="sourceLineNo">1762</span>   */<a name="line.1762"></a>
-<span class="sourceLineNo">1763</span>  default void disableReplicationPeer(String peerId) throws IOException {<a name="line.1763"></a>
-<span class="sourceLineNo">1764</span>    get(disableReplicationPeerAsync(peerId), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.1764"></a>
-<span class="sourceLineNo">1765</span>  }<a name="line.1765"></a>
-<span class="sourceLineNo">1766</span><a name="line.1766"></a>
-<span class="sourceLineNo">1767</span>  /**<a name="line.1767"></a>
-<span class="sourceLineNo">1768</span>   * Disable a replication peer but does not block and wait for it.<a name="line.1768"></a>
-<span class="sourceLineNo">1769</span>   * &lt;p/&gt;<a name="line.1769"></a>
-<span class="sourceLineNo">1770</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1770"></a>
-<span class="sourceLineNo">1771</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1771"></a>
-<span class="sourceLineNo">1772</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1772"></a>
-<span class="sourceLineNo">1773</span>   * @param peerId a short name that identifies the peer<a name="line.1773"></a>
-<span class="sourceLineNo">1774</span>   * @return the result of the async operation<a name="line.1774"></a>
-<span class="sourceLineNo">1775</span>   * @throws IOException IOException if a remote or network exception occurs<a name="line.1775"></a>
-<span class="sourceLineNo">1776</span>   */<a name="line.1776"></a>
-<span class="sourceLineNo">1777</span>  Future&lt;Void&gt; disableReplicationPeerAsync(String peerId) throws IOException;<a name="line.1777"></a>
-<span class="sourceLineNo">1778</span><a name="line.1778"></a>
-<span class="sourceLineNo">1779</span>  /**<a name="line.1779"></a>
-<span class="sourceLineNo">1780</span>   * Returns the configured ReplicationPeerConfig for the specified peer.<a name="line.1780"></a>
-<span class="sourceLineNo">1781</span>   * @param peerId a short name that identifies the peer<a name="line.1781"></a>
-<span class="sourceLineNo">1782</span>   * @return ReplicationPeerConfig for the peer<a name="line.1782"></a>
-<span class="sourceLineNo">1783</span>   * @throws IOException if a remote or network exception occurs<a name="line.1783"></a>
-<span class="sourceLineNo">1784</span>   */<a name="line.1784"></a>
-<span class="sourceLineNo">1785</span>  ReplicationPeerConfig getReplicationPeerConfig(String peerId) throws IOException;<a name="line.1785"></a>
-<span class="sourceLineNo">1786</span><a name="line.1786"></a>
-<span class="sourceLineNo">1787</span>  /**<a name="line.1787"></a>
-<span class="sourceLineNo">1788</span>   * Update the peerConfig for the specified peer.<a name="line.1788"></a>
-<span class="sourceLineNo">1789</span>   * @param peerId a short name that identifies the peer<a name="line.1789"></a>
-<span class="sourceLineNo">1790</span>   * @param peerConfig new config for the replication peer<a name="line.1790"></a>
-<span class="sourceLineNo">1791</span>   * @throws IOException if a remote or network exception occurs<a name="line.1791"></a>
-<span class="sourceLineNo">1792</span>   */<a name="line.1792"></a>
-<span class="sourceLineNo">1793</span>  default void updateReplicationPeerConfig(String peerId, ReplicationPeerConfig peerConfig)<a name="line.1793"></a>
-<span class="sourceLineNo">1794</span>      throws IOException {<a name="line.1794"></a>
-<span class="sourceLineNo">1795</span>    get(updateReplicationPeerConfigAsync(peerId, peerConfig), getSyncWaitTimeout(),<a name="line.1795"></a>
-<span class="sourceLineNo">1796</span>      TimeUnit.MILLISECONDS);<a name="line.1796"></a>
-<span class="sourceLineNo">1797</span>  }<a name="line.1797"></a>
-<span class="sourceLineNo">1798</span><a name="line.1798"></a>
-<span class="sourceLineNo">1799</span>  /**<a name="line.1799"></a>
-<span class="sourceLineNo">1800</span>   * Update the peerConfig for the specified peer but does not block and wait for it.<a name="line.1800"></a>
-<span class="sourceLineNo">1801</span>   * &lt;p/&gt;<a name="line.1801"></a>
-<span class="sourceLineNo">1802</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1802"></a>
-<span class="sourceLineNo">1803</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1803"></a>
-<span class="sourceLineNo">1804</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1804"></a>
-<span class="sourceLineNo">1805</span>   * @param peerId a short name that identifies the peer<a name="line.1805"></a>
-<span class="sourceLineNo">1806</span>   * @param peerConfig new config for the replication peer<a name="line.1806"></a>
-<span class="sourceLineNo">1807</span>   * @return the result of the async operation<a name="line.1807"></a>
-<span class="sourceLineNo">1808</span>   * @throws IOException IOException if a remote or network exception occurs<a name="line.1808"></a>
-<span class="sourceLineNo">1809</span>   */<a name="line.1809"></a>
-<span class="sourceLineNo">1810</span>  Future&lt;Void&gt; updateReplicationPeerConfigAsync(String peerId, ReplicationPeerConfig peerConfig)<a name="line.1810"></a>
-<span class="sourceLineNo">1811</span>      throws IOException;<a name="line.1811"></a>
-<span class="sourceLineNo">1812</span><a name="line.1812"></a>
-<span class="sourceLineNo">1813</span>  /**<a name="line.1813"></a>
-<span class="sourceLineNo">1814</span>   * Append the replicable table column family config from the specified peer.<a name="line.1814"></a>
-<span class="sourceLineNo">1815</span>   * @param id a short that identifies the cluster<a name="line.1815"></a>
-<span class="sourceLineNo">1816</span>   * @param tableCfs A map from tableName to column family names<a name="line.1816"></a>
-<span class="sourceLineNo">1817</span>   * @throws ReplicationException if tableCfs has conflict with existing config<a name="line.1817"></a>
-<span class="sourceLineNo">1818</span>   * @throws IOException if a remote or network exception occurs<a name="line.1818"></a>
-<span class="sourceLineNo">1819</span>   */<a name="line.1819"></a>
-<span class="sourceLineNo">1820</span>  default void appendReplicationPeerTableCFs(String id, Map&lt;TableName, List&lt;String&gt;&gt; tableCfs)<a name="line.1820"></a>
-<span class="sourceLineNo">1821</span>      throws ReplicationException, IOException {<a name="line.1821"></a>
-<span class="sourceLineNo">1822</span>    if (tableCfs == null) {<a name="line.1822"></a>
-<span class="sourceLineNo">1823</span>      throw new ReplicationException("tableCfs is null");<a name="line.1823"></a>
-<span class="sourceLineNo">1824</span>    }<a name="line.1824"></a>
-<span class="sourceLineNo">1825</span>    ReplicationPeerConfig peerConfig = getReplicationPeerConfig(id);<a name="line.1825"></a>
-<span class="sourceLineNo">1826</span>    ReplicationPeerConfig newPeerConfig =<a name="line.1826"></a>
-<span class="sourceLineNo">1827</span>      ReplicationPeerConfigUtil.appendTableCFsToReplicationPeerConfig(tableCfs, peerConfig);<a name="line.1827"></a>
-<span class="sourceLineNo">1828</span>    updateReplicationPeerConfig(id, newPeerConfig);<a name="line.1828"></a>
-<span class="sourceLineNo">1829</span>  }<a name="line.1829"></a>
-<span class="sourceLineNo">1830</span><a name="line.1830"></a>
-<span class="sourceLineNo">1831</span>  /**<a name="line.1831"></a>
-<span class="sourceLineNo">1832</span>   * Remove some table-cfs from config of the specified peer.<a name="line.1832"></a>
-<span class="sourceLineNo">1833</span>   * @param id a short name that identifies the cluster<a name="line.1833"></a>
-<span class="sourceLineNo">1834</span>   * @param tableCfs A map from tableName to column family names<a name="line.1834"></a>
-<span class="sourceLineNo">1835</span>   * @throws ReplicationException if tableCfs has conflict with existing config<a name="line.1835"></a>
-<span class="sourceLineNo">1836</span>   * @throws IOException if a remote or network exception occurs<a name="line.1836"></a>
-<span class="sourceLineNo">1837</span>   */<a name="line.1837"></a>
-<span class="sourceLineNo">1838</span>  default void removeReplicationPeerTableCFs(String id, Map&lt;TableName, List&lt;String&gt;&gt; tableCfs)<a name="line.1838"></a>
-<span class="sourceLineNo">1839</span>      throws ReplicationException, IOException {<a name="line.1839"></a>
-<span class="sourceLineNo">1840</span>    if (tableCfs == null) {<a name="line.1840"></a>
-<span class="sourceLineNo">1841</span>      throw new ReplicationException("tableCfs is null");<a name="line.1841"></a>
-<span class="sourceLineNo">1842</span>    }<a name="line.1842"></a>
-<span class="sourceLineNo">1843</span>    ReplicationPeerConfig peerConfig = getReplicationPeerConfig(id);<a name="line.1843"></a>
-<span class="sourceLineNo">1844</span>    ReplicationPeerConfig newPeerConfig =<a name="line.1844"></a>
-<span class="sourceLineNo">1845</span>      ReplicationPeerConfigUtil.removeTableCFsFromReplicationPeerConfig(tableCfs, peerConfig, id);<a name="line.1845"></a>
-<span class="sourceLineNo">1846</span>    updateReplicationPeerConfig(id, newPeerConfig);<a name="line.1846"></a>
-<span class="sourceLineNo">1847</span>  }<a name="line.1847"></a>
-<span class="sourceLineNo">1848</span><a name="line.1848"></a>
-<span class="sourceLineNo">1849</span>  /**<a name="line.1849"></a>
-<span class="sourceLineNo">1850</span>   * Return a list of replication peers.<a name="line.1850"></a>
-<span class="sourceLineNo">1851</span>   * @return a list of replication peers description<a name="line.1851"></a>
-<span class="sourceLineNo">1852</span>   * @throws IOException if a remote or network exception occurs<a name="line.1852"></a>
-<span class="sourceLineNo">1853</span>   */<a name="line.1853"></a>
-<span class="sourceLineNo">1854</span>  List&lt;ReplicationPeerDescription&gt; listReplicationPeers() throws IOException;<a name="line.1854"></a>
-<span class="sourceLineNo">1855</span><a name="line.1855"></a>
-<span class="sourceLineNo">1856</span>  /**<a name="line.1856"></a>
-<span class="sourceLineNo">1857</span>   * Return a list of replication peers.<a name="line.1857"></a>
-<span class="sourceLineNo">1858</span>   * @param pattern The compiled regular expression to match peer id<a name="line.1858"></a>
-<span class="sourceLineNo">1859</span>   * @return a list of replication peers description<a name="line.1859"></a>
-<span class="sourceLineNo">1860</span>   * @throws IOException if a remote or network exception occurs<a name="line.1860"></a>
-<span class="sourceLineNo">1861</span>   */<a name="line.1861"></a>
-<span class="sourceLineNo">1862</span>  List&lt;ReplicationPeerDescription&gt; listReplicationPeers(Pattern pattern) throws IOException;<a name="line.1862"></a>
-<span class="sourceLineNo">1863</span><a name="line.1863"></a>
-<span class="sourceLineNo">1864</span>  /**<a name="line.1864"></a>
-<span class="sourceLineNo">1865</span>   * Transit current cluster to a new state in a synchronous replication peer.<a name="line.1865"></a>
-<span class="sourceLineNo">1866</span>   * @param peerId a short name that identifies the peer<a name="line.1866"></a>
-<span class="sourceLineNo">1867</span>   * @param state a new state of current cluster<a name="line.1867"></a>
-<span class="sourceLineNo">1868</span>   * @throws IOException if a remote or network exception occurs<a name="line.1868"></a>
-<span class="sourceLineNo">1869</span>   */<a name="line.1869"></a>
-<span class="sourceLineNo">1870</span>  default void transitReplicationPeerSyncReplicationState(String peerId, SyncReplicationState state)<a name="line.1870"></a>
-<span class="sourceLineNo">1871</span>      throws IOException {<a name="line.1871"></a>
-<span class="sourceLineNo">1872</span>    get(transitReplicationPeerSyncReplicationStateAsync(peerId, state), getSyncWaitTimeout(),<a name="line.1872"></a>
-<span class="sourceLineNo">1873</span>      TimeUnit.MILLISECONDS);<a name="line.1873"></a>
-<span class="sourceLineNo">1874</span>  }<a name="line.1874"></a>
-<span class="sourceLineNo">1875</span><a name="line.1875"></a>
-<span class="sourceLineNo">1876</span>  /**<a name="line.1876"></a>
-<span class="sourceLineNo">1877</span>   * Transit current cluster to a new state in a synchronous replication peer. But does not block<a name="line.1877"></a>
-<span class="sourceLineNo">1878</span>   * and wait for it.<a name="line.1878"></a>
-<span class="sourceLineNo">1879</span>   * &lt;p&gt;<a name="line.1879"></a>
-<span class="sourceLineNo">1880</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1880"></a>
-<span class="sourceLineNo">1881</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1881"></a>
-<span class="sourceLineNo">1882</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1882"></a>
-<span class="sourceLineNo">1883</span>   * @param peerId a short name that identifies the peer<a name="line.1883"></a>
-<span class="sourceLineNo">1884</span>   * @param state a new state of current cluster<a name="line.1884"></a>
-<span class="sourceLineNo">1885</span>   * @throws IOException if a remote or network exception occurs<a name="line.1885"></a>
-<span class="sourceLineNo">1886</span>   */<a name="line.1886"></a>
-<span class="sourceLineNo">1887</span>  Future&lt;Void&gt; transitReplicationPeerSyncReplicationStateAsync(String peerId,<a name="line.1887"></a>
-<span class="sourceLineNo">1888</span>      SyncReplicationState state) throws IOException;<a name="line.1888"></a>
-<span class="sourceLineNo">1889</span><a name="line.1889"></a>
-<span class="sourceLineNo">1890</span>  /**<a name="line.1890"></a>
-<span class="sourceLineNo">1891</span>   * Get the current cluster state in a synchronous replication peer.<a name="line.1891"></a>
-<span class="sourceLineNo">1892</span>   * @param peerId a short name that identifies the peer<a name="line.1892"></a>
-<span class="sourceLineNo">1893</span>   * @return the current cluster state<a name="line.1893"></a>
-<span class="sourceLineNo">1894</span>   * @throws IOException if a remote or network exception occurs<a name="line.1894"></a>
-<span class="sourceLineNo">1895</span>   */<a name="line.1895"></a>
-<span class="sourceLineNo">1896</span>  default SyncReplicationState getReplicationPeerSyncReplicationState(String peerId)<a name="line.1896"></a>
-<span class="sourceLineNo">1897</span>      throws IOException {<a name="line.1897"></a>
-<span class="sourceLineNo">1898</span>    List&lt;ReplicationPeerDescription&gt; peers = listReplicationPeers(Pattern.compile(peerId));<a name="line.1898"></a>
-<span class="sourceLineNo">1899</span>    if (peers.isEmpty() || !peers.get(0).getPeerId().equals(peerId)) {<a name="line.1899"></a>
-<span class="sourceLineNo">1900</span>      throw new IOException("Replication peer " + peerId + " does not exist");<a name="line.1900"></a>
-<span class="sourceLineNo">1901</span>    }<a name="line.1901"></a>
-<span class="sourceLineNo">1902</span>    return peers.get(0).getSyncReplicationState();<a name="line.1902"></a>
-<span class="sourceLineNo">1903</span>  }<a name="line.1903"></a>
-<span class="sourceLineNo">1904</span><a name="line.1904"></a>
-<span class="sourceLineNo">1905</span>  /**<a name="line.1905"></a>
-<span class="sourceLineNo">1906</span>   * Mark region server(s) as decommissioned to prevent additional regions from getting<a name="line.1906"></a>
-<span class="sourceLineNo">1907</span>   * assigned to them. Optionally unload the regions on the servers. If there are multiple servers<a name="line.1907"></a>
-<span class="sourceLineNo">1908</span>   * to be decommissioned, decommissioning them at the same time can prevent wasteful region<a name="line.1908"></a>
-<span class="sourceLineNo">1909</span>   * movements. Region unloading is asynchronous.<a name="line.1909"></a>
-<span class="sourceLineNo">1910</span>   * @param servers The list of servers to decommission.<a name="line.1910"></a>
-<span class="sourceLineNo">1911</span>   * @param offload True to offload the regions from the decommissioned servers<a name="line.1911"></a>
-<span class="sourceLineNo">1912</span>   */<a name="line.1912"></a>
-<span class="sourceLineNo">1913</span>  void decommissionRegionServers(List&lt;ServerName&gt; servers, boolean offload) throws IOException;<a name="line.1913"></a>
-<span class="sourceLineNo">1914</span><a name="line.1914"></a>
-<span class="sourceLineNo">1915</span>  /**<a name="line.1915"></a>
-<span class="sourceLineNo">1916</span>   * List region servers marked as decommissioned, which can not be assigned regions.<a name="line.1916"></a>
-<span class="sourceLineNo">1917</span>   * @return List of decommissioned region servers.<a name="line.1917"></a>
-<span class="sourceLineNo">1918</span>   */<a name="line.1918"></a>
-<span class="sourceLineNo">1919</span>  List&lt;ServerName&gt; listDecommissionedRegionServers() throws IOException;<a name="line.1919"></a>
-<span class="sourceLineNo">1920</span><a name="line.1920"></a>
-<span class="sourceLineNo">1921</span>  /**<a name="line.1921"></a>
-<span class="sourceLineNo">1922</span>   * Remove decommission marker from a region server to allow regions assignments.<a name="line.1922"></a>
-<span class="sourceLineNo">1923</span>   * Load regions onto the server if a list of regions is given. Region loading is<a name="line.1923"></a>
-<span class="sourceLineNo">1924</span>   * asynchronous.<a name="line.1924"></a>
-<span class="sourceLineNo">1925</span>   * @param server The server to recommission.<a name="line.1925"></a>
-<span class="sourceLineNo">1926</span>   * @param encodedRegionNames Regions to load onto the server.<a name="line.1926"></a>
-<span class="sourceLineNo">1927</span>   */<a name="line.1927"></a>
-<span class="sourceLineNo">1928</span>  void recommissionRegionServer(ServerName server, List&lt;byte[]&gt; encodedRegionNames)<a name="line.1928"></a>
-<span class="sourceLineNo">1929</span>      throws IOException;<a name="line.1929"></a>
-<span class="sourceLineNo">1930</span><a name="line.1930"></a>
-<span class="sourceLineNo">1931</span>  /**<a name="line.1931"></a>
-<span class="sourceLineNo">1932</span>   * Find all table and column families that are replicated from this cluster<a name="line.1932"></a>
-<span class="sourceLineNo">1933</span>   * @return the replicated table-cfs list of this cluster.<a name="line.1933"></a>
-<span class="sourceLineNo">1934</span>   */<a name="line.1934"></a>
-<span class="sourceLineNo">1935</span>  List&lt;TableCFs&gt; listReplicatedTableCFs() throws IOException;<a name="line.1935"></a>
-<span class="sourceLineNo">1936</span><a name="line.1936"></a>
-<span class="sourceLineNo">1937</span>  /**<a name="line.1937"></a>
-<span class="sourceLineNo">1938</span>   * Enable a table's replication switch.<a name="line.1938"></a>
-<span class="sourceLineNo">1939</span>   * @param tableName name of the table<a name="line.1939"></a>
-<span class="sourceLineNo">1940</span>   * @throws IOException if a remote or network exception occurs<a name="line.1940"></a>
-<span class="sourceLineNo">1941</span>   */<a name="line.1941"></a>
-<span class="sourceLineNo">1942</span>  void enableTableReplication(TableName tableName) throws IOException;<a name="line.1942"></a>
-<span class="sourceLineNo">1943</span><a name="line.1943"></a>
-<span class="sourceLineNo">1944</span>  /**<a name="line.1944"></a>
-<span class="sourceLineNo">1945</span>   * Disable a table's replication switch.<a name="line.1945"></a>
-<span class="sourceLineNo">1946</span>   * @param tableName name of the table<a name="line.1946"></a>
-<span class="sourceLineNo">1947</span>   * @throws IOException if a remote or network exception occurs<a name="line.1947"></a>
-<span class="sourceLineNo">1948</span>   */<a name="line.1948"></a>
-<span class="sourceLineNo">1949</span>  void disableTableReplication(TableName tableName) throws IOException;<a name="line.1949"></a>
-<span class="sourceLineNo">1950</span><a name="line.1950"></a>
-<span class="sourceLineNo">1951</span>  /**<a name="line.1951"></a>
-<span class="sourceLineNo">1952</span>   * Clear compacting queues on a regionserver.<a name="line.1952"></a>
-<span class="sourceLineNo">1953</span>   * @param serverName the region server name<a name="line.1953"></a>
-<span class="sourceLineNo">1954</span>   * @param queues the set of queue name<a name="line.1954"></a>
-<span class="sourceLineNo">1955</span>   * @throws IOException if a remote or network exception occurs<a name="line.1955"></a>
-<span class="sourceLineNo">1956</span>   * @throws InterruptedException<a name="line.1956"></a>
-<span class="sourceLineNo">1957</span>   */<a name="line.1957"></a>
-<span class="sourceLineNo">1958</span>  void clearCompactionQueues(ServerName serverName, Set&lt;String&gt; queues)<a name="line.1958"></a>
-<span class="sourceLineNo">1959</span>    throws IOException, InterruptedException;<a name="line.1959"></a>
-<span class="sourceLineNo">1960</span><a name="line.1960"></a>
-<span class="sourceLineNo">1961</span>  /**<a name="line.1961"></a>
-<span class="sourceLineNo">1962</span>   * List dead region servers.<a name="line.1962"></a>
-<span class="sourceLineNo">1963</span>   * @return List of dead region servers.<a name="line.1963"></a>
-<span class="sourceLineNo">1964</span>   */<a name="line.1964"></a>
-<span class="sourceLineNo">1965</span>  default List&lt;ServerName&gt; listDeadServers() throws IOException {<a name="line.1965"></a>
-<span class="sourceLineNo">1966</span>    return getClusterMetrics(EnumSet.of(Option.DEAD_SERVERS)).getDeadServerNames();<a name="line.1966"></a>
-<span class="sourceLineNo">1967</span>  }<a name="line.1967"></a>
-<span class="sourceLineNo">1968</span><a name="line.1968"></a>
-<span class="sourceLineNo">1969</span>  /**<a name="line.1969"></a>
-<span class="sourceLineNo">1970</span>   * Clear dead region servers from master.<a name="line.1970"></a>
-<span class="sourceLineNo">1971</span>   * @param servers list of dead region servers.<a name="line.1971"></a>
-<span class="sourceLineNo">1972</span>   * @throws IOException if a remote or network exception occurs<a name="line.1972"></a>
-<span class="sourceLineNo">1973</span>   * @return List of servers that are not cleared<a name="line.1973"></a>
-<span class="sourceLineNo">1974</span>   */<a name="line.1974"></a>
-<span class="sourceLineNo">1975</span>  List&lt;ServerName&gt; clearDeadServers(List&lt;ServerName&gt; servers) throws IOException;<a name="line.1975"></a>
-<span class="sourceLineNo">1976</span><a name="line.1976"></a>
-<span class="sourceLineNo">1977</span>  /**<a name="line.1977"></a>
-<span class="sourceLineNo">1978</span>   * Create a new table by cloning the existent table schema.<a name="line.1978"></a>
-<span class="sourceLineNo">1979</span>   * @param tableName name of the table to be cloned<a name="line.1979"></a>
-<span class="sourceLineNo">1980</span>   * @param newTableName name of the new table where the table will be created<a name="line.1980"></a>
-<span class="sourceLineNo">1981</span>   * @param preserveSplits True if the splits should be preserved<a name="line.1981"></a>
-<span class="sourceLineNo">1982</span>   * @throws IOException if a remote or network exception occurs<a name="line.1982"></a>
-<span class="sourceLineNo">1983</span>   */<a name="line.1983"></a>
-<span class="sourceLineNo">1984</span>  void cloneTableSchema(TableName tableName, TableName newTableName, boolean preserveSplits)<a name="line.1984"></a>
-<span class="sourceLineNo">1985</span>      throws IOException;<a name="line.1985"></a>
-<span class="sourceLineNo">1986</span><a name="line.1986"></a>
-<span class="sourceLineNo">1987</span>  /**<a name="line.1987"></a>
-<span class="sourceLineNo">1988</span>   * Switch the rpc throttle enable state.<a name="line.1988"></a>
-<span class="sourceLineNo">1989</span>   * @param enable Set to &lt;code&gt;true&lt;/code&gt; to enable, &lt;code&gt;false&lt;/code&gt; to disable.<a name="line.1989"></a>
-<span class="sourceLineNo">1990</span>   * @return Previous rpc throttle enabled value<a name="line.1990"></a>
-<span class="sourceLineNo">1991</span>   */<a name="line.1991"></a>
-<span class="sourceLineNo">1992</span>  boolean switchRpcThrottle(boolean enable) throws IOException;<a name="line.1992"></a>
-<span class="sourceLineNo">1993</span><a name="line.1993"></a>
-<span class="sourceLineNo">1994</span>  /**<a name="line.1994"></a>
-<span class="sourceLineNo">1995</span>   * Get if the rpc throttle is enabled.<a name="line.1995"></a>
-<span class="sourceLineNo">1996</span>   * @return True if rpc throttle is enabled<a name="line.1996"></a>
-<span class="sourceLineNo">1997</span>   */<a name="line.1997"></a>
-<span class="sourceLineNo">1998</span>  boolean isRpcThrottleEnabled() throws IOException;<a name="line.1998"></a>
-<span class="sourceLineNo">1999</span><a name="line.1999"></a>
-<span class="sourceLineNo">2000</span>  /**<a name="line.2000"></a>
-<span class="sourceLineNo">2001</span>   * Switch the exceed throttle quota. If enabled, user/table/namespace throttle quota<a name="line.2001"></a>
-<span class="sourceLineNo">2002</span>   * can be exceeded if region server has availble quota.<a name="line.2002"></a>
-<span class="sourceLineNo">2003</span>   * @param enable Set to &lt;code&gt;true&lt;/code&gt; to enable, &lt;code&gt;false&lt;/code&gt; to disable.<a name="line.2003"></a>
-<span class="sourceLineNo">2004</span>   * @return Previous exceed throttle enabled value<a name="line.2004"></a>
-<span class="sourceLineNo">2005</span>   */<a name="line.2005"></a>
-<span class="sourceLineNo">2006</span>  boolean exceedThrottleQuotaSwitch(final boolean enable) throws IOException;<a name="line.2006"></a>
-<span class="sourceLineNo">2007</span><a name="line.2007"></a>
-<span class="sourceLineNo">2008</span>  /**<a name="line.2008"></a>
-<span class="sourceLineNo">2009</span>   * Fetches the table sizes on the filesystem as tracked by the HBase Master.<a name="line.2009"></a>
-<span class="sourceLineNo">2010</span>   */<a name="line.2010"></a>
-<span class="sourceLineNo">2011</span>  Map&lt;TableName, Long&gt; getSpaceQuotaTableSizes() throws IOException;<a name="line.2011"></a>
-<span class="sourceLineNo">2012</span><a name="line.2012"></a>
-<span class="sourceLineNo">2013</span>  /**<a name="line.2013"></a>
-<span class="sourceLineNo">2014</span>   * Fetches the observed {@link SpaceQuotaSnapshotView}s observed by a RegionServer.<a name="line.2014"></a>
-<span class="sourceLineNo">2015</span>   */<a name="line.2015"></a>
-<span class="sourceLineNo">2016</span>  Map&lt;TableName, ? extends SpaceQuotaSnapshotView&gt; getRegionServerSpaceQuotaSnapshots(<a name="line.2016"></a>
-<span class="sourceLineNo">2017</span>      ServerName serverName) throws IOException;<a name="line.2017"></a>
-<span class="sourceLineNo">2018</span><a name="line.2018"></a>
-<span class="sourceLineNo">2019</span>  /**<a name="line.2019"></a>
-<span class="sourceLineNo">2020</span>   * Returns the Master's view of a quota on the given {@code namespace} or null if the Master has<a name="line.2020"></a>
-<span class="sourceLineNo">2021</span>   * no quota information on that namespace.<a name="line.2021"></a>
-<span class="sourceLineNo">2022</span>   */<a name="line.2022"></a>
-<span class="sourceLineNo">2023</span>  SpaceQuotaSnapshotView getCurrentSpaceQuotaSnapshot(String namespace) throws IOException;<a name="line.2023"></a>
-<span class="sourceLineNo">2024</span><a name="line.2024"></a>
-<span class="sourceLineNo">2025</span>  /**<a name="line.2025"></a>
-<span class="sourceLineNo">2026</span>   * Returns the Master's view of a quota on the given {@code tableName} or null if the Master has<a name="line.2026"></a>
-<span class="sourceLineNo">2027</span>   * no quota information on that table.<a name="line.2027"></a>
-<span class="sourceLineNo">2028</span>   */<a name="line.2028"></a>
-<span class="sourceLineNo">2029</span>  SpaceQuotaSnapshotView getCurrentSpaceQuotaSnapshot(TableName tableName) throws IOException;<a name="line.2029"></a>
-<span class="sourceLineNo">2030</span><a name="line.2030"></a>
-<span class="sourceLineNo">2031</span>  /**<a name="line.2031"></a>
-<span class="sourceLineNo">2032</span>   * Grants user specific permissions<a name="line.2032"></a>
-<span class="sourceLineNo">2033</span>   * @param userPermission user name and the specific permission<a name="line.2033"></a>
-<span class="sourceLineNo">2034</span>   * @param mergeExistingPermissions If set to false, later granted permissions will override<a name="line.2034"></a>
-<span class="sourceLineNo">2035</span>   *          previous granted permissions. otherwise, it'll merge with previous granted<a name="line.2035"></a>
-<span class="sourceLineNo">2036</span>   *          permissions.<a name="line.2036"></a>
-<span class="sourceLineNo">2037</span>   * @throws IOException if a remote or network exception occurs<a name="line.2037"></a>
-<span class="sourceLineNo">2038</span>   */<a name="line.2038"></a>
-<span class="sourceLineNo">2039</span>  void grant(UserPermission userPermission, boolean mergeExistingPermissions) throws IOException;<a name="line.2039"></a>
-<span class="sourceLineNo">2040</span><a name="line.2040"></a>
-<span class="sourceLineNo">2041</span>  /**<a name="line.2041"></a>
-<span class="sourceLineNo">2042</span>   * Revokes user specific permissions<a name="line.2042"></a>
-<span class="sourceLineNo">2043</span>   * @param userPermission user name and the specific permission<a name="line.2043"></a>
-<span class="sourceLineNo">2044</span>   * @throws IOException if a remote or network exception occurs<a name="line.2044"></a>
-<span class="sourceLineNo">2045</span>   */<a name="line.2045"></a>
-<span class="sourceLineNo">2046</span>  void revoke(UserPermission userPermission) throws IOException;<a name="line.2046"></a>
-<span class="sourceLineNo">2047</span>}<a name="line.2047"></a>
+<span class="sourceLineNo">1607</span><a name="line.1607"></a>
+<span class="sourceLineNo">1608</span>  /**<a name="line.1608"></a>
+<span class="sourceLineNo">1609</span>   * Update the configuration and trigger an online config change<a name="line.1609"></a>
+<span class="sourceLineNo">1610</span>   * on all the regionservers.<a name="line.1610"></a>
+<span class="sourceLineNo">1611</span>   * @throws IOException<a name="line.1611"></a>
+<span class="sourceLineNo">1612</span>   */<a name="line.1612"></a>
+<span class="sourceLineNo">1613</span>  void updateConfiguration() throws IOException;<a name="line.1613"></a>
+<span class="sourceLineNo">1614</span><a name="line.1614"></a>
+<span class="sourceLineNo">1615</span>  /**<a name="line.1615"></a>
+<span class="sourceLineNo">1616</span>   * Get the info port of the current master if one is available.<a name="line.1616"></a>
+<span class="sourceLineNo">1617</span>   * @return master info port<a name="line.1617"></a>
+<span class="sourceLineNo">1618</span>   * @throws IOException<a name="line.1618"></a>
+<span class="sourceLineNo">1619</span>   */<a name="line.1619"></a>
+<span class="sourceLineNo">1620</span>  default int getMasterInfoPort() throws IOException {<a name="line.1620"></a>
+<span class="sourceLineNo">1621</span>    return getClusterMetrics(EnumSet.of(Option.MASTER_INFO_PORT)).getMasterInfoPort();<a name="line.1621"></a>
+<span class="sourceLineNo">1622</span>  }<a name="line.1622"></a>
+<span class="sourceLineNo">1623</span><a name="line.1623"></a>
+<span class="sourceLineNo">1624</span>  /**<a name="line.1624"></a>
+<span class="sourceLineNo">1625</span>   * Return the set of supported security capabilities.<a name="line.1625"></a>
+<span class="sourceLineNo">1626</span>   * @throws IOException<a name="line.1626"></a>
+<span class="sourceLineNo">1627</span>   * @throws UnsupportedOperationException<a name="line.1627"></a>
+<span class="sourceLineNo">1628</span>   */<a name="line.1628"></a>
+<span class="sourceLineNo">1629</span>  List&lt;SecurityCapability&gt; getSecurityCapabilities() throws IOException;<a name="line.1629"></a>
+<span class="sourceLineNo">1630</span><a name="line.1630"></a>
+<span class="sourceLineNo">1631</span>  /**<a name="line.1631"></a>
+<span class="sourceLineNo">1632</span>   * Turn the split switch on or off.<a name="line.1632"></a>
+<span class="sourceLineNo">1633</span>   * @param enabled enabled or not<a name="line.1633"></a>
+<span class="sourceLineNo">1634</span>   * @param synchronous If &lt;code&gt;true&lt;/code&gt;, it waits until current split() call, if outstanding,<a name="line.1634"></a>
+<span class="sourceLineNo">1635</span>   *          to return.<a name="line.1635"></a>
+<span class="sourceLineNo">1636</span>   * @return Previous switch value<a name="line.1636"></a>
+<span class="sourceLineNo">1637</span>   */<a name="line.1637"></a>
+<span class="sourceLineNo">1638</span>  boolean splitSwitch(boolean enabled, boolean synchronous) throws IOException;<a name="line.1638"></a>
+<span class="sourceLineNo">1639</span><a name="line.1639"></a>
+<span class="sourceLineNo">1640</span>  /**<a name="line.1640"></a>
+<span class="sourceLineNo">1641</span>   * Turn the merge switch on or off.<a name="line.1641"></a>
+<span class="sourceLineNo">1642</span>   * @param enabled enabled or not<a name="line.1642"></a>
+<span class="sourceLineNo">1643</span>   * @param synchronous If &lt;code&gt;true&lt;/code&gt;, it waits until current merge() call, if outstanding,<a name="line.1643"></a>
+<span class="sourceLineNo">1644</span>   *          to return.<a name="line.1644"></a>
+<span class="sourceLineNo">1645</span>   * @return Previous switch value<a name="line.1645"></a>
+<span class="sourceLineNo">1646</span>   */<a name="line.1646"></a>
+<span class="sourceLineNo">1647</span>  boolean mergeSwitch(boolean enabled, boolean synchronous) throws IOException;<a name="line.1647"></a>
+<span class="sourceLineNo">1648</span><a name="line.1648"></a>
+<span class="sourceLineNo">1649</span>  /**<a name="line.1649"></a>
+<span class="sourceLineNo">1650</span>   * Query the current state of the split switch.<a name="line.1650"></a>
+<span class="sourceLineNo">1651</span>   * @return &lt;code&gt;true&lt;/code&gt; if the switch is enabled, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.1651"></a>
+<span class="sourceLineNo">1652</span>   */<a name="line.1652"></a>
+<span class="sourceLineNo">1653</span>  boolean isSplitEnabled() throws IOException;<a name="line.1653"></a>
+<span class="sourceLineNo">1654</span><a name="line.1654"></a>
+<span class="sourceLineNo">1655</span>  /**<a name="line.1655"></a>
+<span class="sourceLineNo">1656</span>   * Query the current state of the merge switch.<a name="line.1656"></a>
+<span class="sourceLineNo">1657</span>   * @return &lt;code&gt;true&lt;/code&gt; if the switch is enabled, &lt;code&gt;false&lt;/code&gt; otherwise.<a name="line.1657"></a>
+<span class="sourceLineNo">1658</span>   */<a name="line.1658"></a>
+<span class="sourceLineNo">1659</span>  boolean isMergeEnabled() throws IOException;<a name="line.1659"></a>
+<span class="sourceLineNo">1660</span><a name="line.1660"></a>
+<span class="sourceLineNo">1661</span>  /**<a name="line.1661"></a>
+<span class="sourceLineNo">1662</span>   * Add a new replication peer for replicating data to slave cluster.<a name="line.1662"></a>
+<span class="sourceLineNo">1663</span>   * @param peerId a short name that identifies the peer<a name="line.1663"></a>
+<span class="sourceLineNo">1664</span>   * @param peerConfig configuration for the replication peer<a name="line.1664"></a>
+<span class="sourceLineNo">1665</span>   * @throws IOException if a remote or network exception occurs<a name="line.1665"></a>
+<span class="sourceLineNo">1666</span>   */<a name="line.1666"></a>
+<span class="sourceLineNo">1667</span>  default void addReplicationPeer(String peerId, ReplicationPeerConfig peerConfig)<a name="line.1667"></a>
+<span class="sourceLineNo">1668</span>      throws IOException {<a name="line.1668"></a>
+<span class="sourceLineNo">1669</span>    addReplicationPeer(peerId, peerConfig, true);<a name="line.1669"></a>
+<span class="sourceLineNo">1670</span>  }<a name="line.1670"></a>
+<span class="sourceLineNo">1671</span><a name="line.1671"></a>
+<span class="sourceLineNo">1672</span>  /**<a name="line.1672"></a>
+<span class="sourceLineNo">1673</span>   * Add a new replication peer for replicating data to slave cluster.<a name="line.1673"></a>
+<span class="sourceLineNo">1674</span>   * @param peerId a short name that identifies the peer<a name="line.1674"></a>
+<span class="sourceLineNo">1675</span>   * @param peerConfig configuration for the replication peer<a name="line.1675"></a>
+<span class="sourceLineNo">1676</span>   * @param enabled peer state, true if ENABLED and false if DISABLED<a name="line.1676"></a>
+<span class="sourceLineNo">1677</span>   * @throws IOException if a remote or network exception occurs<a name="line.1677"></a>
+<span class="sourceLineNo">1678</span>   */<a name="line.1678"></a>
+<span class="sourceLineNo">1679</span>  default void addReplicationPeer(String peerId, ReplicationPeerConfig peerConfig, boolean enabled)<a name="line.1679"></a>
+<span class="sourceLineNo">1680</span>      throws IOException {<a name="line.1680"></a>
+<span class="sourceLineNo">1681</span>    get(addReplicationPeerAsync(peerId, peerConfig, enabled), getSyncWaitTimeout(),<a name="line.1681"></a>
+<span class="sourceLineNo">1682</span>      TimeUnit.MILLISECONDS);<a name="line.1682"></a>
+<span class="sourceLineNo">1683</span>  }<a name="line.1683"></a>
+<span class="sourceLineNo">1684</span><a name="line.1684"></a>
+<span class="sourceLineNo">1685</span>  /**<a name="line.1685"></a>
+<span class="sourceLineNo">1686</span>   * Add a new replication peer but does not block and wait for it.<a name="line.1686"></a>
+<span class="sourceLineNo">1687</span>   * &lt;p/&gt;<a name="line.1687"></a>
+<span class="sourceLineNo">1688</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1688"></a>
+<span class="sourceLineNo">1689</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1689"></a>
+<span class="sourceLineNo">1690</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1690"></a>
+<span class="sourceLineNo">1691</span>   * @param peerId a short name that identifies the peer<a name="line.1691"></a>
+<span class="sourceLineNo">1692</span>   * @param peerConfig configuration for the replication peer<a name="line.1692"></a>
+<span class="sourceLineNo">1693</span>   * @return the result of the async operation<a name="line.1693"></a>
+<span class="sourceLineNo">1694</span>   * @throws IOException IOException if a remote or network exception occurs<a name="line.1694"></a>
+<span class="sourceLineNo">1695</span>   */<a name="line.1695"></a>
+<span class="sourceLineNo">1696</span>  default Future&lt;Void&gt; addReplicationPeerAsync(String peerId, ReplicationPeerConfig peerConfig)<a name="line.1696"></a>
+<span class="sourceLineNo">1697</span>      throws IOException {<a name="line.1697"></a>
+<span class="sourceLineNo">1698</span>    return addReplicationPeerAsync(peerId, peerConfig, true);<a name="line.1698"></a>
+<span class="sourceLineNo">1699</span>  }<a name="line.1699"></a>
+<span class="sourceLineNo">1700</span><a name="line.1700"></a>
+<span class="sourceLineNo">1701</span>  /**<a name="line.1701"></a>
+<span class="sourceLineNo">1702</span>   * Add a new replication peer but does not block and wait for it.<a name="line.1702"></a>
+<span class="sourceLineNo">1703</span>   * &lt;p&gt;<a name="line.1703"></a>
+<span class="sourceLineNo">1704</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1704"></a>
+<span class="sourceLineNo">1705</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1705"></a>
+<span class="sourceLineNo">1706</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1706"></a>
+<span class="sourceLineNo">1707</span>   * @param peerId a short name that identifies the peer<a name="line.1707"></a>
+<span class="sourceLineNo">1708</span>   * @param peerConfig configuration for the replication peer<a name="line.1708"></a>
+<span class="sourceLineNo">1709</span>   * @param enabled peer state, true if ENABLED and false if DISABLED<a name="line.1709"></a>
+<span class="sourceLineNo">1710</span>   * @return the result of the async operation<a name="line.1710"></a>
+<span class="sourceLineNo">1711</span>   * @throws IOException IOException if a remote or network exception occurs<a name="line.1711"></a>
+<span class="sourceLineNo">1712</span>   */<a name="line.1712"></a>
+<span class="sourceLineNo">1713</span>  Future&lt;Void&gt; addReplicationPeerAsync(String peerId, ReplicationPeerConfig peerConfig,<a name="line.1713"></a>
+<span class="sourceLineNo">1714</span>      boolean enabled) throws IOException;<a name="line.1714"></a>
+<span class="sourceLineNo">1715</span><a name="line.1715"></a>
+<span class="sourceLineNo">1716</span>  /**<a name="line.1716"></a>
+<span class="sourceLineNo">1717</span>   * Remove a peer and stop the replication.<a name="line.1717"></a>
+<span class="sourceLineNo">1718</span>   * @param peerId a short name that identifies the peer<a name="line.1718"></a>
+<span class="sourceLineNo">1719</span>   * @throws IOException if a remote or network exception occurs<a name="line.1719"></a>
+<span class="sourceLineNo">1720</span>   */<a name="line.1720"></a>
+<span class="sourceLineNo">1721</span>  default void removeReplicationPeer(String peerId) throws IOException {<a name="line.1721"></a>
+<span class="sourceLineNo">1722</span>    get(removeReplicationPeerAsync(peerId), getSyncWaitTimeout(),<a name="line.1722"></a>
+<span class="sourceLineNo">1723</span>      TimeUnit.MILLISECONDS);<a name="line.1723"></a>
+<span class="sourceLineNo">1724</span>  }<a name="line.1724"></a>
+<span class="sourceLineNo">1725</span><a name="line.1725"></a>
+<span class="sourceLineNo">1726</span>  /**<a name="line.1726"></a>
+<span class="sourceLineNo">1727</span>   * Remove a replication peer but does not block and wait for it.<a name="line.1727"></a>
+<span class="sourceLineNo">1728</span>   * &lt;p&gt;<a name="line.1728"></a>
+<span class="sourceLineNo">1729</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1729"></a>
+<span class="sourceLineNo">1730</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1730"></a>
+<span class="sourceLineNo">1731</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1731"></a>
+<span class="sourceLineNo">1732</span>   * @param peerId a short name that identifies the peer<a name="line.1732"></a>
+<span class="sourceLineNo">1733</span>   * @return the result of the async operation<a name="line.1733"></a>
+<span class="sourceLineNo">1734</span>   * @throws IOException IOException if a remote or network exception occurs<a name="line.1734"></a>
+<span class="sourceLineNo">1735</span>   */<a name="line.1735"></a>
+<span class="sourceLineNo">1736</span>  Future&lt;Void&gt; removeReplicationPeerAsync(String peerId) throws IOException;<a name="line.1736"></a>
+<span class="sourceLineNo">1737</span><a name="line.1737"></a>
+<span class="sourceLineNo">1738</span>  /**<a name="line.1738"></a>
+<span class="sourceLineNo">1739</span>   * Restart the replication stream to the specified peer.<a name="line.1739"></a>
+<span class="sourceLineNo">1740</span>   * @param peerId a short name that identifies the peer<a name="line.1740"></a>
+<span class="sourceLineNo">1741</span>   * @throws IOException if a remote or network exception occurs<a name="line.1741"></a>
+<span class="sourceLineNo">1742</span>   */<a name="line.1742"></a>
+<span class="sourceLineNo">1743</span>  default void enableReplicationPeer(String peerId) throws IOException {<a name="line.1743"></a>
+<span class="sourceLineNo">1744</span>    get(enableReplicationPeerAsync(peerId), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.1744"></a>
+<span class="sourceLineNo">1745</span>  }<a name="line.1745"></a>
+<span class="sourceLineNo">1746</span><a name="line.1746"></a>
+<span class="sourceLineNo">1747</span>  /**<a name="line.1747"></a>
+<span class="sourceLineNo">1748</span>   * Enable a replication peer but does not block and wait for it.<a name="line.1748"></a>
+<span class="sourceLineNo">1749</span>   * &lt;p&gt;<a name="line.1749"></a>
+<span class="sourceLineNo">1750</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1750"></a>
+<span class="sourceLineNo">1751</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1751"></a>
+<span class="sourceLineNo">1752</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1752"></a>
+<span class="sourceLineNo">1753</span>   * @param peerId a short name that identifies the peer<a name="line.1753"></a>
+<span class="sourceLineNo">1754</span>   * @return the result of the async operation<a name="line.1754"></a>
+<span class="sourceLineNo">1755</span>   * @throws IOException IOException if a remote or network exception occurs<a name="line.1755"></a>
+<span class="sourceLineNo">1756</span>   */<a name="line.1756"></a>
+<span class="sourceLineNo">1757</span>  Future&lt;Void&gt; enableReplicationPeerAsync(String peerId) throws IOException;<a name="line.1757"></a>
+<span class="sourceLineNo">1758</span><a name="line.1758"></a>
+<span class="sourceLineNo">1759</span>  /**<a name="line.1759"></a>
+<span class="sourceLineNo">1760</span>   * Stop the replication stream to the specified peer.<a name="line.1760"></a>
+<span class="sourceLineNo">1761</span>   * @param peerId a short name that identifies the peer<a name="line.1761"></a>
+<span class="sourceLineNo">1762</span>   * @throws IOException if a remote or network exception occurs<a name="line.1762"></a>
+<span class="sourceLineNo">1763</span>   */<a name="line.1763"></a>
+<span class="sourceLineNo">1764</span>  default void disableReplicationPeer(String peerId) throws IOException {<a name="line.1764"></a>
+<span class="sourceLineNo">1765</span>    get(disableReplicationPeerAsync(peerId), getSyncWaitTimeout(), TimeUnit.MILLISECONDS);<a name="line.1765"></a>
+<span class="sourceLineNo">1766</span>  }<a name="line.1766"></a>
+<span class="sourceLineNo">1767</span><a name="line.1767"></a>
+<span class="sourceLineNo">1768</span>  /**<a name="line.1768"></a>
+<span class="sourceLineNo">1769</span>   * Disable a replication peer but does not block and wait for it.<a name="line.1769"></a>
+<span class="sourceLineNo">1770</span>   * &lt;p/&gt;<a name="line.1770"></a>
+<span class="sourceLineNo">1771</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1771"></a>
+<span class="sourceLineNo">1772</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1772"></a>
+<span class="sourceLineNo">1773</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1773"></a>
+<span class="sourceLineNo">1774</span>   * @param peerId a short name that identifies the peer<a name="line.1774"></a>
+<span class="sourceLineNo">1775</span>   * @return the result of the async operation<a name="line.1775"></a>
+<span class="sourceLineNo">1776</span>   * @throws IOException IOException if a remote or network exception occurs<a name="line.1776"></a>
+<span class="sourceLineNo">1777</span>   */<a name="line.1777"></a>
+<span class="sourceLineNo">1778</span>  Future&lt;Void&gt; disableReplicationPeerAsync(String peerId) throws IOException;<a name="line.1778"></a>
+<span class="sourceLineNo">1779</span><a name="line.1779"></a>
+<span class="sourceLineNo">1780</span>  /**<a name="line.1780"></a>
+<span class="sourceLineNo">1781</span>   * Returns the configured ReplicationPeerConfig for the specified peer.<a name="line.1781"></a>
+<span class="sourceLineNo">1782</span>   * @param peerId a short name that identifies the peer<a name="line.1782"></a>
+<span class="sourceLineNo">1783</span>   * @return ReplicationPeerConfig for the peer<a name="line.1783"></a>
+<span class="sourceLineNo">1784</span>   * @throws IOException if a remote or network exception occurs<a name="line.1784"></a>
+<span class="sourceLineNo">1785</span>   */<a name="line.1785"></a>
+<span class="sourceLineNo">1786</span>  ReplicationPeerConfig getReplicationPeerConfig(String peerId) throws IOException;<a name="line.1786"></a>
+<span class="sourceLineNo">1787</span><a name="line.1787"></a>
+<span class="sourceLineNo">1788</span>  /**<a name="line.1788"></a>
+<span class="sourceLineNo">1789</span>   * Update the peerConfig for the specified peer.<a name="line.1789"></a>
+<span class="sourceLineNo">1790</span>   * @param peerId a short name that identifies the peer<a name="line.1790"></a>
+<span class="sourceLineNo">1791</span>   * @param peerConfig new config for the replication peer<a name="line.1791"></a>
+<span class="sourceLineNo">1792</span>   * @throws IOException if a remote or network exception occurs<a name="line.1792"></a>
+<span class="sourceLineNo">1793</span>   */<a name="line.1793"></a>
+<span class="sourceLineNo">1794</span>  default void updateReplicationPeerConfig(String peerId, ReplicationPeerConfig peerConfig)<a name="line.1794"></a>
+<span class="sourceLineNo">1795</span>      throws IOException {<a name="line.1795"></a>
+<span class="sourceLineNo">1796</span>    get(updateReplicationPeerConfigAsync(peerId, peerConfig), getSyncWaitTimeout(),<a name="line.1796"></a>
+<span class="sourceLineNo">1797</span>      TimeUnit.MILLISECONDS);<a name="line.1797"></a>
+<span class="sourceLineNo">1798</span>  }<a name="line.1798"></a>
+<span class="sourceLineNo">1799</span><a name="line.1799"></a>
+<span class="sourceLineNo">1800</span>  /**<a name="line.1800"></a>
+<span class="sourceLineNo">1801</span>   * Update the peerConfig for the specified peer but does not block and wait for it.<a name="line.1801"></a>
+<span class="sourceLineNo">1802</span>   * &lt;p/&gt;<a name="line.1802"></a>
+<span class="sourceLineNo">1803</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1803"></a>
+<span class="sourceLineNo">1804</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1804"></a>
+<span class="sourceLineNo">1805</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1805"></a>
+<span class="sourceLineNo">1806</span>   * @param peerId a short name that identifies the peer<a name="line.1806"></a>
+<span class="sourceLineNo">1807</span>   * @param peerConfig new config for the replication peer<a name="line.1807"></a>
+<span class="sourceLineNo">1808</span>   * @return the result of the async operation<a name="line.1808"></a>
+<span class="sourceLineNo">1809</span>   * @throws IOException IOException if a remote or network exception occurs<a name="line.1809"></a>
+<span class="sourceLineNo">1810</span>   */<a name="line.1810"></a>
+<span class="sourceLineNo">1811</span>  Future&lt;Void&gt; updateReplicationPeerConfigAsync(String peerId, ReplicationPeerConfig peerConfig)<a name="line.1811"></a>
+<span class="sourceLineNo">1812</span>      throws IOException;<a name="line.1812"></a>
+<span class="sourceLineNo">1813</span><a name="line.1813"></a>
+<span class="sourceLineNo">1814</span>  /**<a name="line.1814"></a>
+<span class="sourceLineNo">1815</span>   * Append the replicable table column family config from the specified peer.<a name="line.1815"></a>
+<span class="sourceLineNo">1816</span>   * @param id a short that identifies the cluster<a name="line.1816"></a>
+<span class="sourceLineNo">1817</span>   * @param tableCfs A map from tableName to column family names<a name="line.1817"></a>
+<span class="sourceLineNo">1818</span>   * @throws ReplicationException if tableCfs has conflict with existing config<a name="line.1818"></a>
+<span class="sourceLineNo">1819</span>   * @throws IOException if a remote or network exception occurs<a name="line.1819"></a>
+<span class="sourceLineNo">1820</span>   */<a name="line.1820"></a>
+<span class="sourceLineNo">1821</span>  default void appendReplicationPeerTableCFs(String id, Map&lt;TableName, List&lt;String&gt;&gt; tableCfs)<a name="line.1821"></a>
+<span class="sourceLineNo">1822</span>      throws ReplicationException, IOException {<a name="line.1822"></a>
+<span class="sourceLineNo">1823</span>    if (tableCfs == null) {<a name="line.1823"></a>
+<span class="sourceLineNo">1824</span>      throw new ReplicationException("tableCfs is null");<a name="line.1824"></a>
+<span class="sourceLineNo">1825</span>    }<a name="line.1825"></a>
+<span class="sourceLineNo">1826</span>    ReplicationPeerConfig peerConfig = getReplicationPeerConfig(id);<a name="line.1826"></a>
+<span class="sourceLineNo">1827</span>    ReplicationPeerConfig newPeerConfig =<a name="line.1827"></a>
+<span class="sourceLineNo">1828</span>      ReplicationPeerConfigUtil.appendTableCFsToReplicationPeerConfig(tableCfs, peerConfig);<a name="line.1828"></a>
+<span class="sourceLineNo">1829</span>    updateReplicationPeerConfig(id, newPeerConfig);<a name="line.1829"></a>
+<span class="sourceLineNo">1830</span>  }<a name="line.1830"></a>
+<span class="sourceLineNo">1831</span><a name="line.1831"></a>
+<span class="sourceLineNo">1832</span>  /**<a name="line.1832"></a>
+<span class="sourceLineNo">1833</span>   * Remove some table-cfs from config of the specified peer.<a name="line.1833"></a>
+<span class="sourceLineNo">1834</span>   * @param id a short name that identifies the cluster<a name="line.1834"></a>
+<span class="sourceLineNo">1835</span>   * @param tableCfs A map from tableName to column family names<a name="line.1835"></a>
+<span class="sourceLineNo">1836</span>   * @throws ReplicationException if tableCfs has conflict with existing config<a name="line.1836"></a>
+<span class="sourceLineNo">1837</span>   * @throws IOException if a remote or network exception occurs<a name="line.1837"></a>
+<span class="sourceLineNo">1838</span>   */<a name="line.1838"></a>
+<span class="sourceLineNo">1839</span>  default void removeReplicationPeerTableCFs(String id, Map&lt;TableName, List&lt;String&gt;&gt; tableCfs)<a name="line.1839"></a>
+<span class="sourceLineNo">1840</span>      throws ReplicationException, IOException {<a name="line.1840"></a>
+<span class="sourceLineNo">1841</span>    if (tableCfs == null) {<a name="line.1841"></a>
+<span class="sourceLineNo">1842</span>      throw new ReplicationException("tableCfs is null");<a name="line.1842"></a>
+<span class="sourceLineNo">1843</span>    }<a name="line.1843"></a>
+<span class="sourceLineNo">1844</span>    ReplicationPeerConfig peerConfig = getReplicationPeerConfig(id);<a name="line.1844"></a>
+<span class="sourceLineNo">1845</span>    ReplicationPeerConfig newPeerConfig =<a name="line.1845"></a>
+<span class="sourceLineNo">1846</span>      ReplicationPeerConfigUtil.removeTableCFsFromReplicationPeerConfig(tableCfs, peerConfig, id);<a name="line.1846"></a>
+<span class="sourceLineNo">1847</span>    updateReplicationPeerConfig(id, newPeerConfig);<a name="line.1847"></a>
+<span class="sourceLineNo">1848</span>  }<a name="line.1848"></a>
+<span class="sourceLineNo">1849</span><a name="line.1849"></a>
+<span class="sourceLineNo">1850</span>  /**<a name="line.1850"></a>
+<span class="sourceLineNo">1851</span>   * Return a list of replication peers.<a name="line.1851"></a>
+<span class="sourceLineNo">1852</span>   * @return a list of replication peers description<a name="line.1852"></a>
+<span class="sourceLineNo">1853</span>   * @throws IOException if a remote or network exception occurs<a name="line.1853"></a>
+<span class="sourceLineNo">1854</span>   */<a name="line.1854"></a>
+<span class="sourceLineNo">1855</span>  List&lt;ReplicationPeerDescription&gt; listReplicationPeers() throws IOException;<a name="line.1855"></a>
+<span class="sourceLineNo">1856</span><a name="line.1856"></a>
+<span class="sourceLineNo">1857</span>  /**<a name="line.1857"></a>
+<span class="sourceLineNo">1858</span>   * Return a list of replication peers.<a name="line.1858"></a>
+<span class="sourceLineNo">1859</span>   * @param pattern The compiled regular expression to match peer id<a name="line.1859"></a>
+<span class="sourceLineNo">1860</span>   * @return a list of replication peers description<a name="line.1860"></a>
+<span class="sourceLineNo">1861</span>   * @throws IOException if a remote or network exception occurs<a name="line.1861"></a>
+<span class="sourceLineNo">1862</span>   */<a name="line.1862"></a>
+<span class="sourceLineNo">1863</span>  List&lt;ReplicationPeerDescription&gt; listReplicationPeers(Pattern pattern) throws IOException;<a name="line.1863"></a>
+<span class="sourceLineNo">1864</span><a name="line.1864"></a>
+<span class="sourceLineNo">1865</span>  /**<a name="line.1865"></a>
+<span class="sourceLineNo">1866</span>   * Transit current cluster to a new state in a synchronous replication peer.<a name="line.1866"></a>
+<span class="sourceLineNo">1867</span>   * @param peerId a short name that identifies the peer<a name="line.1867"></a>
+<span class="sourceLineNo">1868</span>   * @param state a new state of current cluster<a name="line.1868"></a>
+<span class="sourceLineNo">1869</span>   * @throws IOException if a remote or network exception occurs<a name="line.1869"></a>
+<span class="sourceLineNo">1870</span>   */<a name="line.1870"></a>
+<span class="sourceLineNo">1871</span>  default void transitReplicationPeerSyncReplicationState(String peerId, SyncReplicationState state)<a name="line.1871"></a>
+<span class="sourceLineNo">1872</span>      throws IOException {<a name="line.1872"></a>
+<span class="sourceLineNo">1873</span>    get(transitReplicationPeerSyncReplicationStateAsync(peerId, state), getSyncWaitTimeout(),<a name="line.1873"></a>
+<span class="sourceLineNo">1874</span>      TimeUnit.MILLISECONDS);<a name="line.1874"></a>
+<span class="sourceLineNo">1875</span>  }<a name="line.1875"></a>
+<span class="sourceLineNo">1876</span><a name="line.1876"></a>
+<span class="sourceLineNo">1877</span>  /**<a name="line.1877"></a>
+<span class="sourceLineNo">1878</span>   * Transit current cluster to a new state in a synchronous replication peer. But does not block<a name="line.1878"></a>
+<span class="sourceLineNo">1879</span>   * and wait for it.<a name="line.1879"></a>
+<span class="sourceLineNo">1880</span>   * &lt;p&gt;<a name="line.1880"></a>
+<span class="sourceLineNo">1881</span>   * You can use Future.get(long, TimeUnit) to wait on the operation to complete. It may throw<a name="line.1881"></a>
+<span class="sourceLineNo">1882</span>   * ExecutionException if there was an error while executing the operation or TimeoutException in<a name="line.1882"></a>
+<span class="sourceLineNo">1883</span>   * case the wait timeout was not long enough to allow the operation to complete.<a name="line.1883"></a>
+<span class="sourceLineNo">1884</span>   * @param peerId a short name that identifies the peer<a name="line.1884"></a>
+<span class="sourceLineNo">1885</span>   * @param state a new state of current cluster<a name="line.1885"></a>
+<span class="sourceLineNo">1886</span>   * @throws IOException if a remote or network exception occurs<a name="line.1886"></a>
+<span class="sourceLineNo">1887</span>   */<a name="line.1887"></a>
+<span class="sourceLineNo">1888</span>  Future&lt;Void&gt; transitReplicationPeerSyncReplicationStateAsync(String peerId,<a name="line.1888"></a>
+<span class="sourceLineNo">1889</span>      SyncReplicationState state) throws IOException;<a name="line.1889"></a>
+<span class="sourceLineNo">1890</span><a name="line.1890"></a>
+<span class="sourceLineNo">1891</span>  /**<a name="line.1891"></a>
+<span class="sourceLineNo">1892</span>   * Get the current cluster state in a synchronous replication peer.<a name="line.1892"></a>
+<span class="sourceLineNo">1893</span>   * @param peerId a short name that identifies the peer<a name="line.1893"></a>
+<span class="sourceLineNo">1894</span>   * @return the current cluster state<a name="line.1894"></a>
+<span class="sourceLineNo">1895</span>   * @throws IOException if a remote or network exception occurs<a name="line.1895"></a>
+<span class="sourceLineNo">1896</span>   */<a name="line.1896"></a>
+<span class="sourceLineNo">1897</span>  default SyncReplicationState getReplicationPeerSyncReplicationState(String peerId)<a name="line.1897"></a>
+<span class="sourceLineNo">1898</span>      throws IOException {<a name="line.1898"></a>
+<span class="sourceLineNo">1899</span>    List&lt;ReplicationPeerDescription&gt; peers = listReplicationPeers(Pattern.compile(peerId));<a name="line.1899"></a>
+<span class="sourceLineNo">1900</span>    if (peers.isEmpty() || !peers.get(0).getPeerId().equals(peerId)) {<a name="line.1900"></a>
+<span class="sourceLineNo">1901</span>      throw new IOException("Replication peer " + peerId + " does not exist");<a name="line.1901"></a>
+<span class="sourceLineNo">1902</span>    }<a name="line.1902"></a>
+<span class="sourceLineNo">1903</span>    return peers.get(0).getSyncReplicationState();<a name="line.1903"></a>
+<span class="sourceLineNo">1904</span>  }<a name="line.1904"></a>
+<span class="sourceLineNo">1905</span><a name="line.1905"></a>
+<span class="sourceLineNo">1906</span>  /**<a name="line.1906"></a>
+<span class="sourceLineNo">1907</span>   * Mark region server(s) as decommissioned to prevent additional regions from getting<a name="line.1907"></a>
+<span class="sourceLineNo">1908</span>   * assigned to them. Optionally unload the regions on the servers. If there are multiple servers<a name="line.1908"></a>
+<span class="sourceLineNo">1909</span>   * to be decommissioned, decommissioning them at the same time can prevent wasteful region<a name="line.1909"></a>
+<span class="sourceLineNo">1910</span>   * movements. Region unloading is asynchronous.<a name="line.1910"></a>
+<span class="sourceLineNo">1911</span>   * @param servers The list of servers to decommission.<a name="line.1911"></a>
+<span class="sourceLineNo">1912</span>   * @param offload True to offload the regions from the decommissioned servers<a name="line.1912"></a>
+<span class="sourceLineNo">1913</span>   */<a name="line.1913"></a>
+<span class="sourceLineNo">1914</span>  void decommissionRegionServers(List&lt;ServerName&gt; servers, boolean offload) throws IOException;<a name="line.1914"></a>
+<span class="sourceLineNo">1915</span><a name="line.1915"></a>
+<span class="sourceLineNo">1916</span>  /**<a name="line.1916"></a>
+<span class="sourceLineNo">1917</span>   * List region servers marked as decommissioned, which can not be assigned regions.<a name="line.1917"></a>
+<span class="sourceLineNo">1918</span>   * @return List of decommissioned region servers.<a name="line.1918"></a>
+<span class="sourceLineNo">1919</span>   */<a name="line.1919"></a>
+<span class="sourceLineNo">1920</span>  List&lt;ServerName&gt; listDecommissionedRegionServers() throws IOException;<a name="line.1920"></a>
+<span class="sourceLineNo">1921</span><a name="line.1921"></a>
+<span class="sourceLineNo">1922</span>  /**<a name="line.1922"></a>
+<span class="sourceLineNo">1923</span>   * Remove decommission marker from a region server to allow regions assignments.<a name="line.1923"></a>
+<span class="sourceLineNo">1924</span>   * Load regions onto the server if a list of regions is given. Region loading is<a name="line.1924"></a>
+<span class="sourceLineNo">1925</span>   * asynchronous.<a name="line.1925"></a>
+<span class="sourceLineNo">1926</span>   * @param server The server to recommission.<a name="line.1926"></a>
+<span class="sourceLineNo">1927</span>   * @param encodedRegionNames Regions to load onto the server.<a name="line.1927"></a>
+<span class="sourceLineNo">1928</span>   */<a name="line.1928"></a>
+<span class="sourceLineNo">1929</span>  void recommissionRegionServer(ServerName server, List&lt;byte[]&gt; encodedRegionNames)<a name="line.1929"></a>
+<span class="sourceLineNo">1930</span>      throws IOException;<a name="line.1930"></a>
+<span class="sourceLineNo">1931</span><a name="line.1931"></a>
+<span class="sourceLineNo">1932</span>  /**<a name="line.1932"></a>
+<span class="sourceLineNo">1933</span>   * Find all table and column families that are replicated from this cluster<a name="line.1933"></a>
+<span class="sourceLineNo">1934</span>   * @return the replicated table-cfs list of this cluster.<a name="line.1934"></a>
+<span class="sourceLineNo">1935</span>   */<a name="line.1935"></a>
+<span class="sourceLineNo">1936</span>  List&lt;TableCFs&gt; listReplicatedTableCFs() throws IOException;<a name="line.1936"></a>
+<span class="sourceLineNo">1937</span><a name="line.1937"></a>
+<span class="sourceLineNo">1938</span>  /**<a name="line.1938"></a>
+<span class="sourceLineNo">1939</span>   * Enable a table's replication switch.<a name="line.1939"></a>
+<span class="sourceLineNo">1940</span>   * @param tableName name of the table<a name="line.1940"></a>
+<span class="sourceLineNo">1941</span>   * @throws IOException if a remote or network exception occurs<a name="line.1941"></a>
+<span class="sourceLineNo">1942</span>   */<a name="line.1942"></a>
+<span class="sourceLineNo">1943</span>  void enableTableReplication(TableName tableName) throws IOException;<a name="line.1943"></a>
+<span class="sourceLineNo">1944</span><a name="line.1944"></a>
+<span class="sourceLineNo">1945</span>  /**<a name="line.1945"></a>
+<span class="sourceLineNo">1946</span>   * Disable a table's replication switch.<a name="line.1946"></a>
+<span class="sourceLineNo">1947</span>   * @param tableName name of the table<a name="line.1947"></a>
+<span class="sourceLineNo">1948</span>   * @throws IOException if a remote or network exception occurs<a name="line.1948"></a>
+<span class="sourceLineNo">1949</span>   */<a name="line.1949"></a>
+<span class="sourceLineNo">1950</span>  void disableTableReplication(TableName tableName) throws IOException;<a name="line.1950"></a>
+<span class="sourceLineNo">1951</span><a name="line.1951"></a>
+<span class="sourceLineNo">1952</span>  /**<a name="line.1952"></a>
+<span class="sourceLineNo">1953</span>   * Clear compacting queues on a regionserver.<a name="line.1953"></a>
+<span class="sourceLineNo">1954</span>   * @param serverName the region server name<a name="line.1954"></a>
+<span class="sourceLineNo">1955</span>   * @param queues the set of queue name<a name="line.1955"></a>
+<span class="sourceLineNo">1956</span>   * @throws IOException if a remote or network exception occurs<a name="line.1956"></a>
+<span class="sourceLineNo">1957</span>   * @throws InterruptedException<a name="line.1957"></a>
+<span class="sourceLineNo">1958</span>   */<a name="line.1958"></a>
+<span class="sourceLineNo">1959</span>  void clearCompactionQueues(ServerName serverName, Set&lt;String&gt; queues)<a name="line.1959"></a>
+<span class="sourceLineNo">1960</span>    throws IOException, InterruptedException;<a name="line.1960"></a>
+<span class="sourceLineNo">1961</span><a name="line.1961"></a>
+<span class="sourceLineNo">1962</span>  /**<a name="line.1962"></a>
+<span class="sourceLineNo">1963</span>   * List dead region servers.<a name="line.1963"></a>
+<span class="sourceLineNo">1964</span>   * @return List of dead region servers.<a name="line.1964"></a>
+<span class="sourceLineNo">1965</span>   */<a name="line.1965"></a>
+<span class="sourceLineNo">1966</span>  default List&lt;ServerName&gt; listDeadServers() throws IOException {<a name="line.1966"></a>
+<span class="sourceLineNo">1967</span>    return getClusterMetrics(EnumSet.of(Option.DEAD_SERVERS)).getDeadServerNames();<a name="line.1967"></a>
+<span class="sourceLineNo">1968</span>  }<a name="line.1968"></a>
+<span class="sourceLineNo">1969</span><a name="line.1969"></a>
+<span class="sourceLineNo">1970</span>  /**<a name="line.1970"></a>
+<span class="sourceLineNo">1971</span>   * Clear dead region servers from master.<a name="line.1971"></a>
+<span class="sourceLineNo">1972</span>   * @param servers list of dead region servers.<a name="line.1972"></a>
+<span class="sourceLineNo">1973</span>   * @throws IOException if a remote or network exception occurs<a name="line.1973"></a>
+<span class="sourceLineNo">1974</span>   * @return List of servers that are not cleared<a name="line.1974"></a>
+<span class="sourceLineNo">1975</span>   */<a name="line.1975"></a>
+<span class="sourceLineNo">1976</span>  List&lt;ServerName&gt; clearDeadServers(List&lt;ServerName&gt; servers) throws IOException;<a name="line.1976"></a>
+<span class="sourceLineNo">1977</span><a name="line.1977"></a>
+<span class="sourceLineNo">1978</span>  /**<a name="line.1978"></a>
+<span class="sourceLineNo">1979</span>   * Create a new table by cloning the existent table schema.<a name="line.1979"></a>
+<span class="sourceLineNo">1980</span>   * @param tableName name of the table to be cloned<a name="line.1980"></a>
+<span class="sourceLineNo">1981</span>   * @param newTableName name of the new table where the table will be created<a name="line.1981"></a>
+<span class="sourceLineNo">1982</span>   * @param preserveSplits True if the splits should be preserved<a name="line.1982"></a>
+<span class="sourceLineNo">1983</span>   * @throws IOException if a remote or network exception occurs<a name="line.1983"></a>
+<span class="sourceLineNo">1984</span>   */<a name="line.1984"></a>
+<span class="sourceLineNo">1985</span>  void cloneTableSchema(TableName tableName, TableName newTableName, boolean preserveSplits)<a name="line.1985"></a>
+<span class="sourceLineNo">1986</span>      throws IOException;<a name="line.1986"></a>
+<span class="sourceLineNo">1987</span><a name="line.1987"></a>
+<span class="sourceLineNo">1988</span>  /**<a name="line.1988"></a>
+<span class="sourceLineNo">1989</span>   * Switch the rpc throttle enable state.<a name="line.1989"></a>
+<span class="sourceLineNo">1990</span>   * @param enable Set to &lt;code&gt;true&lt;/code&gt; to enable, &lt;code&gt;false&lt;/code&gt; to disable.<a name="line.1990"></a>
+<span class="sourceLineNo">1991</span>   * @return Previous rpc throttle enabled value<a name="line.1991"></a>
+<span class="sourceLineNo">1992</span>   */<a name="line.1992"></a>
+<span class="sourceLineNo">1993</span>  boolean switchRpcThrottle(boolean enable) throws IOException;<a name="line.1993"></a>
+<span class="sourceLineNo">1994</span><a name="line.1994"></a>
+<span class="sourceLineNo">1995</span>  /**<a name="line.1995"></a>
+<span class="sourceLineNo">1996</span>   * Get if the rpc throttle is enabled.<a name="line.1996"></a>
+<span class="sourceLineNo">1997</span>   * @return True if rpc throttle is enabled<a name="line.1997"></a>
+<span class="sourceLineNo">1998</span>   */<a name="line.1998"></a>
+<span class="sourceLineNo">1999</span>  boolean isRpcThrottleEnabled() throws IOException;<a name="line.1999"></a>
+<span class="sourceLineNo">2000</span><a name="line.2000"></a>
+<span class="sourceLineNo">2001</span>  /**<a name="line.2001"></a>
+<span class="sourceLineNo">2002</span>   * Switch the exceed throttle quota. If enabled, user/table/namespace throttle quota<a name="line.2002"></a>
+<span class="sourceLineNo">2003</span>   * can be exceeded if region server has availble quota.<a name="line.2003"></a>
+<span class="sourceLineNo">2004</span>   * @param enable Set to &lt;code&gt;true&lt;/code&gt; to enable, &lt;code&gt;false&lt;/code&gt; to disable.<a name="line.2004"></a>
+<span class="sourceLineNo">2005</span>   * @return Previous exceed throttle enabled value<a name="line.2005"></a>
+<span class="sourceLineNo">2006</span>   */<a name="line.2006"></a>
+<span class="sourceLineNo">2007</span>  boolean exceedThrottleQuotaSwitch(final boolean enable) throws IOException;<a name="line.2007"></a>
+<span class="sourceLineNo">2008</span><a name="line.2008"></a>
+<span class="sourceLineNo">2009</span>  /**<a name="line.2009"></a>
+<span class="sourceLineNo">2010</span>   * Fetches the table sizes on the filesystem as tracked by the HBase Master.<a name="line.2010"></a>
+<span class="sourceLineNo">2011</span>   */<a name="line.2011"></a>
+<span class="sourceLineNo">2012</span>  Map&lt;TableName, Long&gt; getSpaceQuotaTableSizes() throws IOException;<a name="line.2012"></a>
+<span class="sourceLineNo">2013</span><a name="line.2013"></a>
+<span class="sourceLineNo">2014</span>  /**<a name="line.2014"></a>
+<span class="sourceLineNo">2015</span>   * Fetches the observed {@link SpaceQuotaSnapshotView}s observed by a RegionServer.<a name="line.2015"></a>
+<span class="sourceLineNo">2016</span>   */<a name="line.2016"></a>
+<span class="sourceLineNo">2017</span>  Map&lt;TableName, ? extends SpaceQuotaSnapshotView&gt; getRegionServerSpaceQuotaSnapshots(<a name="line.2017"></a>
+<span class="sourceLineNo">2018</span>      ServerName serverName) throws IOException;<a name="line.2018"></a>
+<span class="sourceLineNo">2019</span><a name="line.2019"></a>
+<span class="sourceLineNo">2020</span>  /**<a name="line.2020"></a>
+<span class="sourceLineNo">2021</span>   * Returns the Master's view of a quota on the given {@code namespace} or null if the Master has<a name="line.2021"></a>
+<span class="sourceLineNo">2022</span>   * no quota information on that namespace.<a name="line.2022"></a>
+<span class="sourceLineNo">2023</span>   */<a name="line.2023"></a>
+<span class="sourceLineNo">2024</span>  SpaceQuotaSnapshotView getCurrentSpaceQuotaSnapshot(String namespace) throws IOException;<a name="line.2024"></a>
+<span class="sourceLineNo">2025</span><a name="line.2025"></a>
+<span class="sourceLineNo">2026</span>  /**<a name="line.2026"></a>
+<span class="sourceLineNo">2027</span>   * Returns the Master's view of a quota on the given {@code tableName} or null if the Master has<a name="line.2027"></a>
+<span class="sourceLineNo">2028</span>   * no quota information on that table.<a name="line.2028"></a>
+<span class="sourceLineNo">2029</span>   */<a name="line.2029"></a>
+<span class="sourceLineNo">2030</span>  SpaceQuotaSnapshotView getCurrentSpaceQuotaSnapshot(TableName tableName) throws IOException;<a name="line.2030"></a>
+<span class="sourceLineNo">2031</span><a name="line.2031"></a>
+<span class="sourceLineNo">2032</span>  /**<a name="line.2032"></a>
+<span class="sourceLineNo">2033</span>   * Grants user specific permissions<a name="line.2033"></a>
+<span class="sourceLineNo">2034</span>   * @param userPermission user name and the specific permission<a name="line.2034"></a>
+<span class="sourceLineNo">2035</span>   * @param mergeExistingPermissions If set to false, later granted permissions will override<a name="line.2035"></a>
+<span class="sourceLineNo">2036</span>   *          previous granted permissions. otherwise, it'll merge with previous granted<a name="line.2036"></a>
+<span class="sourceLineNo">2037</span>   *          permissions.<a name="line.2037"></a>
+<span class="sourceLineNo">2038</span>   * @throws IOException if a remote or network exception occurs<a name="line.2038"></a>
+<span class="sourceLineNo">2039</span>   */<a name="line.2039"></a>
+<span class="sourceLineNo">2040</span>  void grant(UserPermission userPermission, boolean mergeExistingPermissions) throws IOException;<a name="line.2040"></a>
+<span class="sourceLineNo">2041</span><a name="line.2041"></a>
+<span class="sourceLineNo">2042</span>  /**<a name="line.2042"></a>
+<span class="sourceLineNo">2043</span>   * Revokes user specific permissions<a name="line.2043"></a>
+<span class="sourceLineNo">2044</span>   * @param userPermission user name and the specific permission<a name="line.2044"></a>
+<span class="sourceLineNo">2045</span>   * @throws IOException if a remote or network exception occurs<a name="line.2045"></a>
+<span class="sourceLineNo">2046</span>   */<a name="line.2046"></a>
+<span class="sourceLineNo">2047</span>  void revoke(UserPermission userPermission) throws IOException;<a name="line.2047"></a>
+<span class="sourceLineNo">2048</span><a name="line.2048"></a>
+<span class="sourceLineNo">2049</span>  /**<a name="line.2049"></a>
+<span class="sourceLineNo">2050</span>   * Get the global/namespace/table permissions for user<a name="line.2050"></a>
+<span class="sourceLineNo">2051</span>   * @param getUserPermissionsRequest A request contains which user, global, namespace or table<a name="line.2051"></a>
+<span class="sourceLineNo">2052</span>   *          permissions needed<a name="line.2052"></a>
+<span class="sourceLineNo">2053</span>   * @return The user and permission list<a name="line.2053"></a>
+<span class="sourceLineNo">2054</span>   * @throws IOException if a remote or network exception occurs<a name="line.2054"></a>
+<span class="sourceLineNo">2055</span>   */<a name="line.2055"></a>
+<span class="sourceLineNo">2056</span>  List&lt;UserPermission&gt; getUserPermissions(GetUserPermissionsRequest getUserPermissionsRequest)<a name="line.2056"></a>
+<span class="sourceLineNo">2057</span>      throws IOException;<a name="line.2057"></a>
+<span class="sourceLineNo">2058</span>}<a name="line.2058"></a>
 
 
 
diff --git a/apidocs/src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html b/apidocs/src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html
index c68476a..ca158a3 100644
--- a/apidocs/src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html
+++ b/apidocs/src-html/org/apache/hadoop/hbase/client/AsyncAdmin.html
@@ -54,355 +54,355 @@
 <span class="sourceLineNo">046</span>import org.apache.hadoop.hbase.replication.ReplicationPeerConfig;<a name="line.46"></a>
 <span class="sourceLineNo">047</span>import org.apache.hadoop.hbase.replication.ReplicationPeerDescription;<a name="line.47"></a>
 <span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.replication.SyncReplicationState;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.security.access.UserPermission;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.50"></a>
-<span class="sourceLineNo">051</span><a name="line.51"></a>
-<span class="sourceLineNo">052</span>/**<a name="line.52"></a>
-<span class="sourceLineNo">053</span> * The asynchronous administrative API for HBase.<a name="line.53"></a>
-<span class="sourceLineNo">054</span> * @since 2.0.0<a name="line.54"></a>
-<span class="sourceLineNo">055</span> */<a name="line.55"></a>
-<span class="sourceLineNo">056</span>@InterfaceAudience.Public<a name="line.56"></a>
-<span class="sourceLineNo">057</span>public interface AsyncAdmin {<a name="line.57"></a>
-<span class="sourceLineNo">058</span><a name="line.58"></a>
-<span class="sourceLineNo">059</span>  /**<a name="line.59"></a>
-<span class="sourceLineNo">060</span>   * @param tableName Table to check.<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   * @return True if table exists already. The return value will be wrapped by a<a name="line.61"></a>
-<span class="sourceLineNo">062</span>   *         {@link CompletableFuture}.<a name="line.62"></a>
-<span class="sourceLineNo">063</span>   */<a name="line.63"></a>
-<span class="sourceLineNo">064</span>  CompletableFuture&lt;Boolean&gt; tableExists(TableName tableName);<a name="line.64"></a>
-<span class="sourceLineNo">065</span><a name="line.65"></a>
-<span class="sourceLineNo">066</span>  /**<a name="line.66"></a>
-<span class="sourceLineNo">067</span>   * List all the userspace tables.<a name="line.67"></a>
-<span class="sourceLineNo">068</span>   * @return - returns a list of TableDescriptors wrapped by a {@link CompletableFuture}.<a name="line.68"></a>
-<span class="sourceLineNo">069</span>   */<a name="line.69"></a>
-<span class="sourceLineNo">070</span>  default CompletableFuture&lt;List&lt;TableDescriptor&gt;&gt; listTableDescriptors() {<a name="line.70"></a>
-<span class="sourceLineNo">071</span>    return listTableDescriptors(false);<a name="line.71"></a>
-<span class="sourceLineNo">072</span>  }<a name="line.72"></a>
-<span class="sourceLineNo">073</span><a name="line.73"></a>
-<span class="sourceLineNo">074</span>  /**<a name="line.74"></a>
-<span class="sourceLineNo">075</span>   * List all the tables.<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   * @param includeSysTables False to match only against userspace tables<a name="line.76"></a>
-<span class="sourceLineNo">077</span>   * @return - returns a list of TableDescriptors wrapped by a {@link CompletableFuture}.<a name="line.77"></a>
-<span class="sourceLineNo">078</span>   */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>  CompletableFuture&lt;List&lt;TableDescriptor&gt;&gt; listTableDescriptors(boolean includeSysTables);<a name="line.79"></a>
-<span class="sourceLineNo">080</span><a name="line.80"></a>
-<span class="sourceLineNo">081</span>  /**<a name="line.81"></a>
-<span class="sourceLineNo">082</span>   * List all the tables matching the given pattern.<a name="line.82"></a>
-<span class="sourceLineNo">083</span>   * @param pattern The compiled regular expression to match against<a name="line.83"></a>
-<span class="sourceLineNo">084</span>   * @param includeSysTables False to match only against userspace tables<a name="line.84"></a>
-<span class="sourceLineNo">085</span>   * @return - returns a list of TableDescriptors wrapped by a {@link CompletableFuture}.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>   */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>  CompletableFuture&lt;List&lt;TableDescriptor&gt;&gt; listTableDescriptors(Pattern pattern,<a name="line.87"></a>
-<span class="sourceLineNo">088</span>      boolean includeSysTables);<a name="line.88"></a>
-<span class="sourceLineNo">089</span><a name="line.89"></a>
-<span class="sourceLineNo">090</span>  /**<a name="line.90"></a>
-<span class="sourceLineNo">091</span>   * List specific tables including system tables.<a name="line.91"></a>
-<span class="sourceLineNo">092</span>   * @param tableNames the table list to match against<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   * @return - returns a list of TableDescriptors wrapped by a {@link CompletableFuture}.<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   */<a name="line.94"></a>
-<span class="sourceLineNo">095</span>  CompletableFuture&lt;List&lt;TableDescriptor&gt;&gt; listTableDescriptors(List&lt;TableName&gt; tableNames);<a name="line.95"></a>
-<span class="sourceLineNo">096</span><a name="line.96"></a>
-<span class="sourceLineNo">097</span>  /**<a name="line.97"></a>
-<span class="sourceLineNo">098</span>   * Get list of table descriptors by namespace.<a name="line.98"></a>
-<span class="sourceLineNo">099</span>   * @param name namespace name<a name="line.99"></a>
-<span class="sourceLineNo">100</span>   * @return returns a list of TableDescriptors wrapped by a {@link CompletableFuture}.<a name="line.100"></a>
-<span class="sourceLineNo">101</span>   */<a name="line.101"></a>
-<span class="sourceLineNo">102</span>  CompletableFuture&lt;List&lt;TableDescriptor&gt;&gt; listTableDescriptorsByNamespace(String name);<a name="line.102"></a>
-<span class="sourceLineNo">103</span><a name="line.103"></a>
-<span class="sourceLineNo">104</span>  /**<a name="line.104"></a>
-<span class="sourceLineNo">105</span>   * List all of the names of userspace tables.<a name="line.105"></a>
-<span class="sourceLineNo">106</span>   * @return a list of table names wrapped by a {@link CompletableFuture}.<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   * @see #listTableNames(Pattern, boolean)<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   */<a name="line.108"></a>
-<span class="sourceLineNo">109</span>  default CompletableFuture&lt;List&lt;TableName&gt;&gt; listTableNames() {<a name="line.109"></a>
-<span class="sourceLineNo">110</span>    return listTableNames(false);<a name="line.110"></a>
-<span class="sourceLineNo">111</span>  }<a name="line.111"></a>
-<span class="sourceLineNo">112</span><a name="line.112"></a>
-<span class="sourceLineNo">113</span>  /**<a name="line.113"></a>
-<span class="sourceLineNo">114</span>   * List all of the names of tables.<a name="line.114"></a>
-<span class="sourceLineNo">115</span>   * @param includeSysTables False to match only against userspace tables<a name="line.115"></a>
-<span class="sourceLineNo">116</span>   * @return a list of table names wrapped by a {@link CompletableFuture}.<a name="line.116"></a>
-<span class="sourceLineNo">117</span>   */<a name="line.117"></a>
-<span class="sourceLineNo">118</span>  CompletableFuture&lt;List&lt;TableName&gt;&gt; listTableNames(boolean includeSysTables);<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span>  /**<a name="line.120"></a>
-<span class="sourceLineNo">121</span>   * List all of the names of userspace tables.<a name="line.121"></a>
-<span class="sourceLineNo">122</span>   * @param pattern The regular expression to match against<a name="line.122"></a>
-<span class="sourceLineNo">123</span>   * @param includeSysTables False to match only against userspace tables<a name="line.123"></a>
-<span class="sourceLineNo">124</span>   * @return a list of table names wrapped by a {@link CompletableFuture}.<a name="line.124"></a>
-<span class="sourceLineNo">125</span>   */<a name="line.125"></a>
-<span class="sourceLineNo">126</span>  CompletableFuture&lt;List&lt;TableName&gt;&gt; listTableNames(Pattern pattern, boolean includeSysTables);<a name="line.126"></a>
-<span class="sourceLineNo">127</span><a name="line.127"></a>
-<span class="sourceLineNo">128</span>  /**<a name="line.128"></a>
-<span class="sourceLineNo">129</span>   * Get list of table names by namespace.<a name="line.129"></a>
-<span class="sourceLineNo">130</span>   * @param name namespace name<a name="line.130"></a>
-<span class="sourceLineNo">131</span>   * @return The list of table names in the namespace wrapped by a {@link CompletableFuture}.<a name="line.131"></a>
-<span class="sourceLineNo">132</span>   */<a name="line.132"></a>
-<span class="sourceLineNo">133</span>  CompletableFuture&lt;List&lt;TableName&gt;&gt; listTableNamesByNamespace(String name);<a name="line.133"></a>
-<span class="sourceLineNo">134</span><a name="line.134"></a>
-<span class="sourceLineNo">135</span>  /**<a name="line.135"></a>
-<span class="sourceLineNo">136</span>   * Method for getting the tableDescriptor<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   * @param tableName as a {@link TableName}<a name="line.137"></a>
-<span class="sourceLineNo">138</span>   * @return the read-only tableDescriptor wrapped by a {@link CompletableFuture}.<a name="line.138"></a>
-<span class="sourceLineNo">139</span>   */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>  CompletableFuture&lt;TableDescriptor&gt; getDescriptor(TableName tableName);<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>  /**<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   * Creates a new table.<a name="line.143"></a>
-<span class="sourceLineNo">144</span>   * @param desc table descriptor for table<a name="line.144"></a>
-<span class="sourceLineNo">145</span>   */<a name="line.145"></a>
-<span class="sourceLineNo">146</span>  CompletableFuture&lt;Void&gt; createTable(TableDescriptor desc);<a name="line.146"></a>
-<span class="sourceLineNo">147</span><a name="line.147"></a>
-<span class="sourceLineNo">148</span>  /**<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   * Creates a new table with the specified number of regions. The start key specified will become<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   * the end key of the first region of the table, and the end key specified will become the start<a name="line.150"></a>
-<span class="sourceLineNo">151</span>   * key of the last region of the table (the first region has a null start key and the last region<a name="line.151"></a>
-<span class="sourceLineNo">152</span>   * has a null end key). BigInteger math will be used to divide the key range specified into enough<a name="line.152"></a>
-<span class="sourceLineNo">153</span>   * segments to make the required number of total regions.<a name="line.153"></a>
-<span class="sourceLineNo">154</span>   * @param desc table descriptor for table<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   * @param startKey beginning of key range<a name="line.155"></a>
-<span class="sourceLineNo">156</span>   * @param endKey end of key range<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   * @param numRegions the total number of regions to create<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   */<a name="line.158"></a>
-<span class="sourceLineNo">159</span>  CompletableFuture&lt;Void&gt; createTable(TableDescriptor desc, byte[] startKey, byte[] endKey,<a name="line.159"></a>
-<span class="sourceLineNo">160</span>      int numRegions);<a name="line.160"></a>
-<span class="sourceLineNo">161</span><a name="line.161"></a>
-<span class="sourceLineNo">162</span>  /**<a name="line.162"></a>
-<span class="sourceLineNo">163</span>   * Creates a new table with an initial set of empty regions defined by the specified split keys.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>   * The total number of regions created will be the number of split keys plus one.<a name="line.164"></a>
-<span class="sourceLineNo">165</span>   * Note : Avoid passing empty split key.<a name="line.165"></a>
-<span class="sourceLineNo">166</span>   * @param desc table descriptor for table<a name="line.166"></a>
-<span class="sourceLineNo">167</span>   * @param splitKeys array of split keys for the initial regions of the table<a name="line.167"></a>
-<span class="sourceLineNo">168</span>   */<a name="line.168"></a>
-<span class="sourceLineNo">169</span>  CompletableFuture&lt;Void&gt; createTable(TableDescriptor desc, byte[][] splitKeys);<a name="line.169"></a>
-<span class="sourceLineNo">170</span><a name="line.170"></a>
-<span class="sourceLineNo">171</span>  /**<a name="line.171"></a>
-<span class="sourceLineNo">172</span>   * Modify an existing table, more IRB friendly version.<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   * @param desc modified description of the table<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   */<a name="line.174"></a>
-<span class="sourceLineNo">175</span>  CompletableFuture&lt;Void&gt; modifyTable(TableDescriptor desc);<a name="line.175"></a>
-<span class="sourceLineNo">176</span><a name="line.176"></a>
-<span class="sourceLineNo">177</span>  /**<a name="line.177"></a>
-<span class="sourceLineNo">178</span>   * Deletes a table.<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   * @param tableName name of table to delete<a name="line.179"></a>
-<span class="sourceLineNo">180</span>   */<a name="line.180"></a>
-<span class="sourceLineNo">181</span>  CompletableFuture&lt;Void&gt; deleteTable(TableName tableName);<a name="line.181"></a>
-<span class="sourceLineNo">182</span><a name="line.182"></a>
-<span class="sourceLineNo">183</span>  /**<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   * Truncate a table.<a name="line.184"></a>
-<span class="sourceLineNo">185</span>   * @param tableName name of table to truncate<a name="line.185"></a>
-<span class="sourceLineNo">186</span>   * @param preserveSplits True if the splits should be preserved<a name="line.186"></a>
-<span class="sourceLineNo">187</span>   */<a name="line.187"></a>
-<span class="sourceLineNo">188</span>  CompletableFuture&lt;Void&gt; truncateTable(TableName tableName, boolean preserveSplits);<a name="line.188"></a>
-<span class="sourceLineNo">189</span><a name="line.189"></a>
-<span class="sourceLineNo">190</span>  /**<a name="line.190"></a>
-<span class="sourceLineNo">191</span>   * Enable a table. The table has to be in disabled state for it to be enabled.<a name="line.191"></a>
-<span class="sourceLineNo">192</span>   * @param tableName name of the table<a name="line.192"></a>
-<span class="sourceLineNo">193</span>   */<a name="line.193"></a>
-<span class="sourceLineNo">194</span>  CompletableFuture&lt;Void&gt; enableTable(TableName tableName);<a name="line.194"></a>
-<span class="sourceLineNo">195</span><a name="line.195"></a>
-<span class="sourceLineNo">196</span>  /**<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   * Disable a table. The table has to be in enabled state for it to be disabled.<a name="line.197"></a>
-<span class="sourceLineNo">198</span>   * @param tableName<a name="line.198"></a>
-<span class="sourceLineNo">199</span>   */<a name="line.199"></a>
-<span class="sourceLineNo">200</span>  CompletableFuture&lt;Void&gt; disableTable(TableName tableName);<a name="line.200"></a>
-<span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>  /**<a name="line.202"></a>
-<span class="sourceLineNo">203</span>   * @param tableName name of table to check<a name="line.203"></a>
-<span class="sourceLineNo">204</span>   * @return true if table is on-line. The return value will be wrapped by a<a name="line.204"></a>
-<span class="sourceLineNo">205</span>   *         {@link CompletableFuture}.<a name="line.205"></a>
-<span class="sourceLineNo">206</span>   */<a name="line.206"></a>
-<span class="sourceLineNo">207</span>  CompletableFuture&lt;Boolean&gt; isTableEnabled(TableName tableName);<a name="line.207"></a>
-<span class="sourceLineNo">208</span><a name="line.208"></a>
-<span class="sourceLineNo">209</span>  /**<a name="line.209"></a>
-<span class="sourceLineNo">210</span>   * @param tableName name of table to check<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   * @return true if table is off-line. The return value will be wrapped by a<a name="line.211"></a>
-<span class="sourceLineNo">212</span>   *         {@link CompletableFuture}.<a name="line.212"></a>
-<span class="sourceLineNo">213</span>   */<a name="line.213"></a>
-<span class="sourceLineNo">214</span>  CompletableFuture&lt;Boolean&gt; isTableDisabled(TableName tableName);<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>  /**<a name="line.216"></a>
-<span class="sourceLineNo">217</span>   * @param tableName name of table to check<a name="line.217"></a>
-<span class="sourceLineNo">218</span>   * @return true if all regions of the table are available. The return value will be wrapped by a<a name="line.218"></a>
-<span class="sourceLineNo">219</span>   *         {@link CompletableFuture}.<a name="line.219"></a>
-<span class="sourceLineNo">220</span>   */<a name="line.220"></a>
-<span class="sourceLineNo">221</span>  CompletableFuture&lt;Boolean&gt; isTableAvailable(TableName tableName);<a name="line.221"></a>
-<span class="sourceLineNo">222</span><a name="line.222"></a>
-<span class="sourceLineNo">223</span>  /**<a name="line.223"></a>
-<span class="sourceLineNo">224</span>   * Use this api to check if the table has been created with the specified number of splitkeys<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   * which was used while creating the given table. Note : If this api is used after a table's<a name="line.225"></a>
-<span class="sourceLineNo">226</span>   * region gets splitted, the api may return false. The return value will be wrapped by a<a name="line.226"></a>
-<span class="sourceLineNo">227</span>   * {@link CompletableFuture}.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   * @param tableName name of table to check<a name="line.228"></a>
-<span class="sourceLineNo">229</span>   * @param splitKeys keys to check if the table has been created with all split keys<a name="line.229"></a>
-<span class="sourceLineNo">230</span>   * @deprecated Since 2.2.0. Will be removed in 3.0.0. Use {@link #isTableAvailable(TableName)}<a name="line.230"></a>
-<span class="sourceLineNo">231</span>   */<a name="line.231"></a>
-<span class="sourceLineNo">232</span>  @Deprecated<a name="line.232"></a>
-<span class="sourceLineNo">233</span>  CompletableFuture&lt;Boolean&gt; isTableAvailable(TableName tableName, byte[][] splitKeys);<a name="line.233"></a>
-<span class="sourceLineNo">234</span><a name="line.234"></a>
-<span class="sourceLineNo">235</span>  /**<a name="line.235"></a>
-<span class="sourceLineNo">236</span>   * Add a column family to an existing table.<a name="line.236"></a>
-<span class="sourceLineNo">237</span>   * @param tableName name of the table to add column family to<a name="line.237"></a>
-<span class="sourceLineNo">238</span>   * @param columnFamily column family descriptor of column family to be added<a name="line.238"></a>
-<span class="sourceLineNo">239</span>   */<a name="line.239"></a>
-<span class="sourceLineNo">240</span>  CompletableFuture&lt;Void&gt; addColumnFamily(TableName tableName,<a name="line.240"></a>
-<span class="sourceLineNo">241</span>      ColumnFamilyDescriptor columnFamily);<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>  /**<a name="line.243"></a>
-<span class="sourceLineNo">244</span>   * Delete a column family from a table.<a name="line.244"></a>
-<span class="sourceLineNo">245</span>   * @param tableName name of table<a name="line.245"></a>
-<span class="sourceLineNo">246</span>   * @param columnFamily name of column family to be deleted<a name="line.246"></a>
-<span class="sourceLineNo">247</span>   */<a name="line.247"></a>
-<span class="sourceLineNo">248</span>  CompletableFuture&lt;Void&gt; deleteColumnFamily(TableName tableName, byte[] columnFamily);<a name="line.248"></a>
-<span class="sourceLineNo">249</span><a name="line.249"></a>
-<span class="sourceLineNo">250</span>  /**<a name="line.250"></a>
-<span class="sourceLineNo">251</span>   * Modify an existing column family on a table.<a name="line.251"></a>
-<span class="sourceLineNo">252</span>   * @param tableName name of table<a name="line.252"></a>
-<span class="sourceLineNo">253</span>   * @param columnFamily new column family descriptor to use<a name="line.253"></a>
-<span class="sourceLineNo">254</span>   */<a name="line.254"></a>
-<span class="sourceLineNo">255</span>  CompletableFuture&lt;Void&gt; modifyColumnFamily(TableName tableName,<a name="line.255"></a>
-<span class="sourceLineNo">256</span>      ColumnFamilyDescriptor columnFamily);<a name="line.256"></a>
-<span class="sourceLineNo">257</span><a name="line.257"></a>
-<span class="sourceLineNo">258</span>  /**<a name="line.258"></a>
-<span class="sourceLineNo">259</span>   * Create a new namespace.<a name="line.259"></a>
-<span class="sourceLineNo">260</span>   * @param descriptor descriptor which describes the new namespace<a name="line.260"></a>
-<span class="sourceLineNo">261</span>   */<a name="line.261"></a>
-<span class="sourceLineNo">262</span>  CompletableFuture&lt;Void&gt; createNamespace(NamespaceDescriptor descriptor);<a name="line.262"></a>
-<span class="sourceLineNo">263</span><a name="line.263"></a>
-<span class="sourceLineNo">264</span>  /**<a name="line.264"></a>
-<span class="sourceLineNo">265</span>   * Modify an existing namespace.<a name="line.265"></a>
-<span class="sourceLineNo">266</span>   * @param descriptor descriptor which describes the new namespace<a name="line.266"></a>
-<span class="sourceLineNo">267</span>   */<a name="line.267"></a>
-<span class="sourceLineNo">268</span>  CompletableFuture&lt;Void&gt; modifyNamespace(NamespaceDescriptor descriptor);<a name="line.268"></a>
-<span class="sourceLineNo">269</span><a name="line.269"></a>
-<span class="sourceLineNo">270</span>  /**<a name="line.270"></a>
-<span class="sourceLineNo">271</span>   * Delete an existing namespace. Only empty namespaces (no tables) can be removed.<a name="line.271"></a>
-<span class="sourceLineNo">272</span>   * @param name namespace name<a name="line.272"></a>
-<span class="sourceLineNo">273</span>   */<a name="line.273"></a>
-<span class="sourceLineNo">274</span>  CompletableFuture&lt;Void&gt; deleteNamespace(String name);<a name="line.274"></a>
-<span class="sourceLineNo">275</span><a name="line.275"></a>
-<span class="sourceLineNo">276</span>  /**<a name="line.276"></a>
-<span class="sourceLineNo">277</span>   * Get a namespace descriptor by name<a name="line.277"></a>
-<span class="sourceLineNo">278</span>   * @param name name of namespace descriptor<a name="line.278"></a>
-<span class="sourceLineNo">279</span>   * @return A descriptor wrapped by a {@link CompletableFuture}.<a name="line.279"></a>
+<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.security.access.UserPermission;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.51"></a>
+<span class="sourceLineNo">052</span><a name="line.52"></a>
+<span class="sourceLineNo">053</span>/**<a name="line.53"></a>
+<span class="sourceLineNo">054</span> * The asynchronous administrative API for HBase.<a name="line.54"></a>
+<span class="sourceLineNo">055</span> * @since 2.0.0<a name="line.55"></a>
+<span class="sourceLineNo">056</span> */<a name="line.56"></a>
+<span class="sourceLineNo">057</span>@InterfaceAudience.Public<a name="line.57"></a>
+<span class="sourceLineNo">058</span>public interface AsyncAdmin {<a name="line.58"></a>
+<span class="sourceLineNo">059</span><a name="line.59"></a>
+<span class="sourceLineNo">060</span>  /**<a name="line.60"></a>
+<span class="sourceLineNo">061</span>   * @param tableName Table to check.<a name="line.61"></a>
+<span class="sourceLineNo">062</span>   * @return True if table exists already. The return value will be wrapped by a<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   *         {@link CompletableFuture}.<a name="line.63"></a>
+<span class="sourceLineNo">064</span>   */<a name="line.64"></a>
+<span class="sourceLineNo">065</span>  CompletableFuture&lt;Boolean&gt; tableExists(TableName tableName);<a name="line.65"></a>
+<span class="sourceLineNo">066</span><a name="line.66"></a>
+<span class="sourceLineNo">067</span>  /**<a name="line.67"></a>
+<span class="sourceLineNo">068</span>   * List all the userspace tables.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>   * @return - returns a list of TableDescriptors wrapped by a {@link CompletableFuture}.<a name="line.69"></a>
+<span class="sourceLineNo">070</span>   */<a name="line.70"></a>
+<span class="sourceLineNo">071</span>  default CompletableFuture&lt;List&lt;TableDescriptor&gt;&gt; listTableDescriptors() {<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    return listTableDescriptors(false);<a name="line.72"></a>
+<span class="sourceLineNo">073</span>  }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>  /**<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   * List all the tables.<a name="line.76"></a>
+<span class="sourceLineNo">077</span>   * @param includeSysTables False to match only against userspace tables<a name="line.77"></a>
+<span class="sourceLineNo">078</span>   * @return - returns a list of TableDescriptors wrapped by a {@link CompletableFuture}.<a name="line.78"></a>
+<span class="sourceLineNo">079</span>   */<a name="line.79"></a>
+<span class="sourceLineNo">080</span>  CompletableFuture&lt;List&lt;TableDescriptor&gt;&gt; listTableDescriptors(boolean includeSysTables);<a name="line.80"></a>
+<span class="sourceLineNo">081</span><a name="line.81"></a>
+<span class="sourceLineNo">082</span>  /**<a name="line.82"></a>
+<span class="sourceLineNo">083</span>   * List all the tables matching the given pattern.<a name="line.83"></a>
+<span class="sourceLineNo">084</span>   * @param pattern The compiled regular expression to match against<a name="line.84"></a>
+<span class="sourceLineNo">085</span>   * @param includeSysTables False to match only against userspace tables<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   * @return - returns a list of TableDescriptors wrapped by a {@link CompletableFuture}.<a name="line.86"></a>
+<span class="sourceLineNo">087</span>   */<a name="line.87"></a>
+<span class="sourceLineNo">088</span>  CompletableFuture&lt;List&lt;TableDescriptor&gt;&gt; listTableDescriptors(Pattern pattern,<a name="line.88"></a>
+<span class="sourceLineNo">089</span>      boolean includeSysTables);<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>  /**<a name="line.91"></a>
+<span class="sourceLineNo">092</span>   * List specific tables including system tables.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>   * @param tableNames the table list to match against<a name="line.93"></a>
+<span class="sourceLineNo">094</span>   * @return - returns a list of TableDescriptors wrapped by a {@link CompletableFuture}.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>   */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>  CompletableFuture&lt;List&lt;TableDescriptor&gt;&gt; listTableDescriptors(List&lt;TableName&gt; tableNames);<a name="line.96"></a>
+<span class="sourceLineNo">097</span><a name="line.97"></a>
+<span class="sourceLineNo">098</span>  /**<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   * Get list of table descriptors by namespace.<a name="line.99"></a>
+<span class="sourceLineNo">100</span>   * @param name namespace name<a name="line.100"></a>
+<span class="sourceLineNo">101</span>   * @return returns a list of TableDescriptors wrapped by a {@link CompletableFuture}.<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   */<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  CompletableFuture&lt;List&lt;TableDescriptor&gt;&gt; listTableDescriptorsByNamespace(String name);<a name="line.103"></a>
+<span class="sourceLineNo">104</span><a name="line.104"></a>
+<span class="sourceLineNo">105</span>  /**<a name="line.105"></a>
+<span class="sourceLineNo">106</span>   * List all of the names of userspace tables.<a name="line.106"></a>
+<span class="sourceLineNo">107</span>   * @return a list of table names wrapped by a {@link CompletableFuture}.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>   * @see #listTableNames(Pattern, boolean)<a name="line.108"></a>
+<span class="sourceLineNo">109</span>   */<a name="line.109"></a>
+<span class="sourceLineNo">110</span>  default CompletableFuture&lt;List&lt;TableName&gt;&gt; listTableNames() {<a name="line.110"></a>
+<span class="sourceLineNo">111</span>    return listTableNames(false);<a name="line.111"></a>
+<span class="sourceLineNo">112</span>  }<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span>  /**<a name="line.114"></a>
+<span class="sourceLineNo">115</span>   * List all of the names of tables.<a name="line.115"></a>
+<span class="sourceLineNo">116</span>   * @param includeSysTables False to match only against userspace tables<a name="line.116"></a>
+<span class="sourceLineNo">117</span>   * @return a list of table names wrapped by a {@link CompletableFuture}.<a name="line.117"></a>
+<span class="sourceLineNo">118</span>   */<a name="line.118"></a>
+<span class="sourceLineNo">119</span>  CompletableFuture&lt;List&lt;TableName&gt;&gt; listTableNames(boolean includeSysTables);<a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>  /**<a name="line.121"></a>
+<span class="sourceLineNo">122</span>   * List all of the names of userspace tables.<a name="line.122"></a>
+<span class="sourceLineNo">123</span>   * @param pattern The regular expression to match against<a name="line.123"></a>
+<span class="sourceLineNo">124</span>   * @param includeSysTables False to match only against userspace tables<a name="line.124"></a>
+<span class="sourceLineNo">125</span>   * @return a list of table names wrapped by a {@link CompletableFuture}.<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   */<a name="line.126"></a>
+<span class="sourceLineNo">127</span>  CompletableFuture&lt;List&lt;TableName&gt;&gt; listTableNames(Pattern pattern, boolean includeSysTables);<a name="line.127"></a>
+<span class="sourceLineNo">128</span><a name="line.128"></a>
+<span class="sourceLineNo">129</span>  /**<a name="line.129"></a>
+<span class="sourceLineNo">130</span>   * Get list of table names by namespace.<a name="line.130"></a>
+<span class="sourceLineNo">131</span>   * @param name namespace name<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   * @return The list of table names in the namespace wrapped by a {@link CompletableFuture}.<a name="line.132"></a>
+<span class="sourceLineNo">133</span>   */<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  CompletableFuture&lt;List&lt;TableName&gt;&gt; listTableNamesByNamespace(String name);<a name="line.134"></a>
+<span class="sourceLineNo">135</span><a name="line.135"></a>
+<span class="sourceLineNo">136</span>  /**<a name="line.136"></a>
+<span class="sourceLineNo">137</span>   * Method for getting the tableDescriptor<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   * @param tableName as a {@link TableName}<a name="line.138"></a>
+<span class="sourceLineNo">139</span>   * @return the read-only tableDescriptor wrapped by a {@link CompletableFuture}.<a name="line.139"></a>
+<span class="sourceLineNo">140</span>   */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>  CompletableFuture&lt;TableDescriptor&gt; getDescriptor(TableName tableName);<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span>  /**<a name="line.143"></a>
+<span class="sourceLineNo">144</span>   * Creates a new table.<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   * @param desc table descriptor for table<a name="line.145"></a>
+<span class="sourceLineNo">146</span>   */<a name="line.146"></a>
+<span class="sourceLineNo">147</span>  CompletableFuture&lt;Void&gt; createTable(TableDescriptor desc);<a name="line.147"></a>
+<span class="sourceLineNo">148</span><a name="line.148"></a>
+<span class="sourceLineNo">149</span>  /**<a name="line.149"></a>
+<span class="sourceLineNo">150</span>   * Creates a new table with the specified number of regions. The start key specified will become<a name="line.150"></a>
+<span class="sourceLineNo">151</span>   * the end key of the first region of the table, and the end key specified will become the start<a name="line.151"></a>
+<span class="sourceLineNo">152</span>   * key of the last region of the table (the first region has a null start key and the last region<a name="line.152"></a>
+<span class="sourceLineNo">153</span>   * has a null end key). BigInteger math will be used to divide the key range specified into enough<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   * segments to make the required number of total regions.<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   * @param desc table descriptor for table<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   * @param startKey beginning of key range<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   * @param endKey end of key range<a name="line.157"></a>
+<span class="sourceLineNo">158</span>   * @param numRegions the total number of regions to create<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   */<a name="line.159"></a>
+<span class="sourceLineNo">160</span>  CompletableFuture&lt;Void&gt; createTable(TableDescriptor desc, byte[] startKey, byte[] endKey,<a name="line.160"></a>
+<span class="sourceLineNo">161</span>      int numRegions);<a name="line.161"></a>
+<span class="sourceLineNo">162</span><a name="line.162"></a>
+<span class="sourceLineNo">163</span>  /**<a name="line.163"></a>
+<span class="sourceLineNo">164</span>   * Creates a new table with an initial set of empty regions defined by the specified split keys.<a name="line.164"></a>
+<span class="sourceLineNo">165</span>   * The total number of regions created will be the number of split keys plus one.<a name="line.165"></a>
+<span class="sourceLineNo">166</span>   * Note : Avoid passing empty split key.<a name="line.166"></a>
+<span class="sourceLineNo">167</span>   * @param desc table descriptor for table<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   * @param splitKeys array of split keys for the initial regions of the table<a name="line.168"></a>
+<span class="sourceLineNo">169</span>   */<a name="line.169"></a>
+<span class="sourceLineNo">170</span>  CompletableFuture&lt;Void&gt; createTable(TableDescriptor desc, byte[][] splitKeys);<a name="line.170"></a>
+<span class="sourceLineNo">171</span><a name="line.171"></a>
+<span class="sourceLineNo">172</span>  /**<a name="line.172"></a>
+<span class="sourceLineNo">173</span>   * Modify an existing table, more IRB friendly version.<a name="line.173"></a>
+<span class="sourceLineNo">174</span>   * @param desc modified description of the table<a name="line.174"></a>
+<span class="sourceLineNo">175</span>   */<a name="line.175"></a>
+<span class="sourceLineNo">176</span>  CompletableFuture&lt;Void&gt; modifyTable(TableDescriptor desc);<a name="line.176"></a>
+<span class="sourceLineNo">177</span><a name="line.177"></a>
+<span class="sourceLineNo">178</span>  /**<a name="line.178"></a>
+<span class="sourceLineNo">179</span>   * Deletes a table.<a name="line.179"></a>
+<span class="sourceLineNo">180</span>   * @param tableName name of table to delete<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   */<a name="line.181"></a>
+<span class="sourceLineNo">182</span>  CompletableFuture&lt;Void&gt; deleteTable(TableName tableName);<a name="line.182"></a>
+<span class="sourceLineNo">183</span><a name="line.183"></a>
+<span class="sourceLineNo">184</span>  /**<a name="line.184"></a>
+<span class="sourceLineNo">185</span>   * Truncate a table.<a name="line.185"></a>
+<span class="sourceLineNo">186</span>   * @param tableName name of table to truncate<a name="line.186"></a>
+<span class="sourceLineNo">187</span>   * @param preserveSplits True if the splits should be preserved<a name="line.187"></a>
+<span class="sourceLineNo">188</span>   */<a name="line.188"></a>
+<span class="sourceLineNo">189</span>  CompletableFuture&lt;Void&gt; truncateTable(TableName tableName, boolean preserveSplits);<a name="line.189"></a>
+<span class="sourceLineNo">190</span><a name="line.190"></a>
+<span class="sourceLineNo">191</span>  /**<a name="line.191"></a>
+<span class="sourceLineNo">192</span>   * Enable a table. The table has to be in disabled state for it to be enabled.<a name="line.192"></a>
+<span class="sourceLineNo">193</span>   * @param tableName name of the table<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   */<a name="line.194"></a>
+<span class="sourceLineNo">195</span>  CompletableFuture&lt;Void&gt; enableTable(TableName tableName);<a name="line.195"></a>
+<span class="sourceLineNo">196</span><a name="line.196"></a>
+<span class="sourceLineNo">197</span>  /**<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   * Disable a table. The table has to be in enabled state for it to be disabled.<a name="line.198"></a>
+<span class="sourceLineNo">199</span>   * @param tableName<a name="line.199"></a>
+<span class="sourceLineNo">200</span>   */<a name="line.200"></a>
+<span class="sourceLineNo">201</span>  CompletableFuture&lt;Void&gt; disableTable(TableName tableName);<a name="line.201"></a>
+<span class="sourceLineNo">202</span><a name="line.202"></a>
+<span class="sourceLineNo">203</span>  /**<a name="line.203"></a>
+<span class="sourceLineNo">204</span>   * @param tableName name of table to check<a name="line.204"></a>
+<span class="sourceLineNo">205</span>   * @return true if table is on-line. The return value will be wrapped by a<a name="line.205"></a>
+<span class="sourceLineNo">206</span>   *         {@link CompletableFuture}.<a name="line.206"></a>
+<span class="sourceLineNo">207</span>   */<a name="line.207"></a>
+<span class="sourceLineNo">208</span>  CompletableFuture&lt;Boolean&gt; isTableEnabled(TableName tableName);<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span>  /**<a name="line.210"></a>
+<span class="sourceLineNo">211</span>   * @param tableName name of table to check<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   * @return true if table is off-line. The return value will be wrapped by a<a name="line.212"></a>
+<span class="sourceLineNo">213</span>   *         {@link CompletableFuture}.<a name="line.213"></a>
+<span class="sourceLineNo">214</span>   */<a name="line.214"></a>
+<span class="sourceLineNo">215</span>  CompletableFuture&lt;Boolean&gt; isTableDisabled(TableName tableName);<a name="line.215"></a>
+<span class="sourceLineNo">216</span><a name="line.216"></a>
+<span class="sourceLineNo">217</span>  /**<a name="line.217"></a>
+<span class="sourceLineNo">218</span>   * @param tableName name of table to check<a name="line.218"></a>
+<span class="sourceLineNo">219</span>   * @return true if all regions of the table are available. The return value will be wrapped by a<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   *         {@link CompletableFuture}.<a name="line.220"></a>
+<span class="sourceLineNo">221</span>   */<a name="line.221"></a>
+<span class="sourceLineNo">222</span>  CompletableFuture&lt;Boolean&gt; isTableAvailable(TableName tableName);<a name="line.222"></a>
+<span class="sourceLineNo">223</span><a name="line.223"></a>
+<span class="sourceLineNo">224</span>  /**<a name="line.224"></a>
+<span class="sourceLineNo">225</span>   * Add a column family to an existing table.<a name="line.225"></a>
+<span class="sourceLineNo">226</span>   * @param tableName name of the table to add column family to<a name="line.226"></a>
+<span class="sourceLineNo">227</span>   * @param columnFamily column family descriptor of column family to be added<a name="line.227"></a>
+<span class="sourceLineNo">228</span>   */<a name="line.228"></a>
+<span class="sourceLineNo">229</span>  CompletableFuture&lt;Void&gt; addColumnFamily(TableName tableName,<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      ColumnFamilyDescriptor columnFamily);<a name="line.230"></a>
+<span class="sourceLineNo">231</span><a name="line.231"></a>
+<span class="sourceLineNo">232</span>  /**<a name="line.232"></a>
+<span class="sourceLineNo">233</span>   * Delete a column family from a table.<a name="line.233"></a>
+<span class="sourceLineNo">234</span>   * @param tableName name of table<a name="line.234"></a>
+<span class="sourceLineNo">235</span>   * @param columnFamily name of column family to be deleted<a name="line.235"></a>
+<span class="sourceLineNo">236</span>   */<a name="line.236"></a>
+<span class="sourceLineNo">237</span>  CompletableFuture&lt;Void&gt; deleteColumnFamily(TableName tableName, byte[] columnFamily);<a name="line.237"></a>
+<span class="sourceLineNo">238</span><a name="line.238"></a>
+<span class="sourceLineNo">239</span>  /**<a name="line.239"></a>
+<span class="sourceLineNo">240</span>   * Modify an existing column family on a table.<a name="line.240"></a>
+<span class="sourceLineNo">241</span>   * @param tableName name of table<a name="line.241"></a>
+<span class="sourceLineNo">242</span>   * @param columnFamily new column family descriptor to use<a name="line.242"></a>
+<span class="sourceLineNo">243</span>   */<a name="line.243"></a>
+<span class="sourceLineNo">244</span>  CompletableFuture&lt;Void&gt; modifyColumnFamily(TableName tableName,<a name="line.244"></a>
+<span class="sourceLineNo">245</span>      ColumnFamilyDescriptor columnFamily);<a name="line.245"></a>
+<span class="sourceLineNo">246</span><a name="line.246"></a>
+<span class="sourceLineNo">247</span>  /**<a name="line.247"></a>
+<span class="sourceLineNo">248</span>   * Create a new namespace.<a name="line.248"></a>
+<span class="sourceLineNo">249</span>   * @param descriptor descriptor which describes the new namespace<a name="line.249"></a>
+<span class="sourceLineNo">250</span>   */<a name="line.250"></a>
+<span class="sourceLineNo">251</span>  CompletableFuture&lt;Void&gt; createNamespace(NamespaceDescriptor descriptor);<a name="line.251"></a>
+<span class="sourceLineNo">252</span><a name="line.252"></a>
+<span class="sourceLineNo">253</span>  /**<a name="line.253"></a>
+<span class="sourceLineNo">254</span>   * Modify an existing namespace.<a name="line.254"></a>
+<span class="sourceLineNo">255</span>   * @param descriptor descriptor which describes the new namespace<a name="line.255"></a>
+<span class="sourceLineNo">256</span>   */<a name="line.256"></a>
+<span class="sourceLineNo">257</span>  CompletableFuture&lt;Void&gt; modifyNamespace(NamespaceDescriptor descriptor);<a name="line.257"></a>
+<span class="sourceLineNo">258</span><a name="line.258"></a>
+<span class="sourceLineNo">259</span>  /**<a name="line.259"></a>
+<span class="sourceLineNo">260</span>   * Delete an existing namespace. Only empty namespaces (no tables) can be removed.<a name="line.260"></a>
+<span class="sourceLineNo">261</span>   * @param name namespace name<a name="line.261"></a>
+<span class="sourceLineNo">262</span>   */<a name="line.262"></a>
+<span class="sourceLineNo">263</span>  CompletableFuture&lt;Void&gt; deleteNamespace(String name);<a name="line.263"></a>
+<span class="sourceLineNo">264</span><a name="line.264"></a>
+<span class="sourceLineNo">265</span>  /**<a name="line.265"></a>
+<span class="sourceLineNo">266</span>   * Get a namespace descriptor by name<a name="line.266"></a>
+<span class="sourceLineNo">267</span>   * @param name name of namespace descriptor<a name="line.267"></a>
+<span class="sourceLineNo">268</span>   * @return A descriptor wrapped by a {@link CompletableFuture}.<a name="line.268"></a>
+<span class="sourceLineNo">269</span>   */<a name="line.269"></a>
+<span class="sourceLineNo">270</span>  CompletableFuture&lt;NamespaceDescriptor&gt; getNamespaceDescriptor(String name);<a name="line.270"></a>
+<span class="sourceLineNo">271</span><a name="line.271"></a>
+<span class="sourceLineNo">272</span>  /**<a name="line.272"></a>
+<span class="sourceLineNo">273</span>   * List available namespace descriptors<a name="line.273"></a>
+<span class="sourceLineNo">274</span>   * @return List of descriptors wrapped by a {@link CompletableFuture}.<a name="line.274"></a>
+<span class="sourceLineNo">275</span>   */<a name="line.275"></a>
+<span class="sourceLineNo">276</span>  CompletableFuture&lt;List&lt;NamespaceDescriptor&gt;&gt; listNamespaceDescriptors();<a name="line.276"></a>
+<span class="sourceLineNo">277</span><a name="line.277"></a>
+<span class="sourceLineNo">278</span>  /**<a name="line.278"></a>
+<span class="sourceLineNo">279</span>   * Get all the online regions on a region server.<a name="line.279"></a>
 <span class="sourceLineNo">280</span>   */<a name="line.280"></a>
-<span class="sourceLineNo">281</span>  CompletableFuture&lt;NamespaceDescriptor&gt; getNamespaceDescriptor(String name);<a name="line.281"></a>
+<span class="sourceLineNo">281</span>  CompletableFuture&lt;List&lt;RegionInfo&gt;&gt; getRegions(ServerName serverName);<a name="line.281"></a>
 <span class="sourceLineNo">282</span><a name="line.282"></a>
 <span class="sourceLineNo">283</span>  /**<a name="line.283"></a>
-<span class="sourceLineNo">284</span>   * List available namespace descriptors<a name="line.284"></a>
-<span class="sourceLineNo">285</span>   * @return List of descriptors wrapped by a {@link CompletableFuture}.<a name="line.285"></a>
-<span class="sourceLineNo">286</span>   */<a name="line.286"></a>
-<span class="sourceLineNo">287</span>  CompletableFuture&lt;List&lt;NamespaceDescriptor&gt;&gt; listNamespaceDescriptors();<a name="line.287"></a>
-<span class="sourceLineNo">288</span><a name="line.288"></a>
-<span class="sourceLineNo">289</span>  /**<a name="line.289"></a>
-<span class="sourceLineNo">290</span>   * Get all the online regions on a region server.<a name="line.290"></a>
+<span class="sourceLineNo">284</span>   * Get the regions of a given table.<a name="line.284"></a>
+<span class="sourceLineNo">285</span>   */<a name="line.285"></a>
+<span class="sourceLineNo">286</span>  CompletableFuture&lt;List&lt;RegionInfo&gt;&gt; getRegions(TableName tableName);<a name="line.286"></a>
+<span class="sourceLineNo">287</span><a name="line.287"></a>
+<span class="sourceLineNo">288</span>  /**<a name="line.288"></a>
+<span class="sourceLineNo">289</span>   * Flush a table.<a name="line.289"></a>
+<span class="sourceLineNo">290</span>   * @param tableName table to flush<a name="line.290"></a>
 <span class="sourceLineNo">291</span>   */<a name="line.291"></a>
-<span class="sourceLineNo">292</span>  CompletableFuture&lt;List&lt;RegionInfo&gt;&gt; getRegions(ServerName serverName);<a name="line.292"></a>
+<span class="sourceLineNo">292</span>  CompletableFuture&lt;Void&gt; flush(TableName tableName);<a name="line.292"></a>
 <span class="sourceLineNo">293</span><a name="line.293"></a>
 <span class="sourceLineNo">294</span>  /**<a name="line.294"></a>
-<span class="sourceLineNo">295</span>   * Get the regions of a given table.<a name="line.295"></a>
-<span class="sourceLineNo">296</span>   */<a name="line.296"></a>
-<span class="sourceLineNo">297</span>  CompletableFuture&lt;List&lt;RegionInfo&gt;&gt; getRegions(TableName tableName);<a name="line.297"></a>
-<span class="sourceLineNo">298</span><a name="line.298"></a>
-<span class="sourceLineNo">299</span>  /**<a name="line.299"></a>
-<span class="sourceLineNo">300</span>   * Flush a table.<a name="line.300"></a>
-<span class="sourceLineNo">301</span>   * @param tableName table to flush<a name="line.301"></a>
-<span class="sourceLineNo">302</span>   */<a name="line.302"></a>
-<span class="sourceLineNo">303</span>  CompletableFuture&lt;Void&gt; flush(TableName tableName);<a name="line.303"></a>
-<span class="sourceLineNo">304</span><a name="line.304"></a>
-<span class="sourceLineNo">305</span>  /**<a name="line.305"></a>
-<span class="sourceLineNo">306</span>   * Flush an individual region.<a name="line.306"></a>
-<span class="sourceLineNo">307</span>   * @param regionName region to flush<a name="line.307"></a>
-<span class="sourceLineNo">308</span>   */<a name="line.308"></a>
-<span class="sourceLineNo">309</span>  CompletableFuture&lt;Void&gt; flushRegion(byte[] regionName);<a name="line.309"></a>
-<span class="sourceLineNo">310</span><a name="line.310"></a>
-<span class="sourceLineNo">311</span>  /**<a name="line.311"></a>
-<span class="sourceLineNo">312</span>   * Flush all region on the region server.<a name="line.312"></a>
-<span class="sourceLineNo">313</span>   * @param serverName server to flush<a name="line.313"></a>
-<span class="sourceLineNo">314</span>   */<a name="line.314"></a>
-<span class="sourceLineNo">315</span>  CompletableFuture&lt;Void&gt; flushRegionServer(ServerName serverName);<a name="line.315"></a>
-<span class="sourceLineNo">316</span><a name="line.316"></a>
-<span class="sourceLineNo">317</span>  /**<a name="line.317"></a>
-<span class="sourceLineNo">318</span>   * Compact a table. When the returned CompletableFuture is done, it only means the compact request<a name="line.318"></a>
-<span class="sourceLineNo">319</span>   * was sent to HBase and may need some time to finish the compact operation.<a name="line.319"></a>
-<span class="sourceLineNo">320</span>   * @param tableName table to compact<a name="line.320"></a>
-<span class="sourceLineNo">321</span>   */<a name="line.321"></a>
-<span class="sourceLineNo">322</span>  default CompletableFuture&lt;Void&gt; compact(TableName tableName) {<a name="line.322"></a>
-<span class="sourceLineNo">323</span>    return compact(tableName, CompactType.NORMAL);<a name="line.323"></a>
-<span class="sourceLineNo">324</span>  }<a name="line.324"></a>
-<span class="sourceLineNo">325</span><a name="line.325"></a>
-<span class="sourceLineNo">326</span>  /**<a name="line.326"></a>
-<span class="sourceLineNo">327</span>   * Compact a column family within a table. When the returned CompletableFuture is done, it only<a name="line.327"></a>
-<span class="sourceLineNo">328</span>   * means the compact request was sent to HBase and may need some time to finish the compact<a name="line.328"></a>
-<span class="sourceLineNo">329</span>   * operation.<a name="line.329"></a>
-<span class="sourceLineNo">330</span>   * @param tableName table to compact<a name="line.330"></a>
-<span class="sourceLineNo">331</span>   * @param columnFamily column family within a table. If not present, compact the table's all<a name="line.331"></a>
-<span class="sourceLineNo">332</span>   *          column families.<a name="line.332"></a>
-<span class="sourceLineNo">333</span>   */<a name="line.333"></a>
-<span class="sourceLineNo">334</span>  default CompletableFuture&lt;Void&gt; compact(TableName tableName, byte[] columnFamily) {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>    return compact(tableName, columnFamily, CompactType.NORMAL);<a name="line.335"></a>
-<span class="sourceLineNo">336</span>  }<a name="line.336"></a>
-<span class="sourceLineNo">337</span><a name="line.337"></a>
-<span class="sourceLineNo">338</span>  /**<a name="line.338"></a>
-<span class="sourceLineNo">339</span>   * Compact a table. When the returned CompletableFuture is done, it only means the compact request<a name="line.339"></a>
-<span class="sourceLineNo">340</span>   * was sent to HBase and may need some time to finish the compact operation.<a name="line.340"></a>
-<span class="sourceLineNo">341</span>   * @param tableName table to compact<a name="line.341"></a>
-<span class="sourceLineNo">342</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.342"></a>
-<span class="sourceLineNo">343</span>   */<a name="line.343"></a>
-<span class="sourceLineNo">344</span>  CompletableFuture&lt;Void&gt; compact(TableName tableName, CompactType compactType);<a name="line.344"></a>
-<span class="sourceLineNo">345</span><a name="line.345"></a>
-<span class="sourceLineNo">346</span>  /**<a name="line.346"></a>
-<span class="sourceLineNo">347</span>   * Compact a column family within a table. When the returned CompletableFuture is done, it only<a name="line.347"></a>
-<span class="sourceLineNo">348</span>   * means the compact request was sent to HBase and may need some time to finish the compact<a name="line.348"></a>
-<span class="sourceLineNo">349</span>   * operation.<a name="line.349"></a>
-<span class="sourceLineNo">350</span>   * @param tableName table to compact<a name="line.350"></a>
-<span class="sourceLineNo">351</span>   * @param columnFamily column family within a table<a name="line.351"></a>
-<span class="sourceLineNo">352</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.352"></a>
-<span class="sourceLineNo">353</span>   */<a name="line.353"></a>
-<span class="sourceLineNo">354</span>  CompletableFuture&lt;Void&gt; compact(TableName tableName, byte[] columnFamily,<a name="line.354"></a>
-<span class="sourceLineNo">355</span>      CompactType compactType);<a name="line.355"></a>
-<span class="sourceLineNo">356</span><a name="line.356"></a>
-<span class="sourceLineNo">357</span>  /**<a name="line.357"></a>
-<span class="sourceLineNo">358</span>   * Compact an individual region. When the returned CompletableFuture is done, it only means the<a name="line.358"></a>
-<span class="sourceLineNo">359</span>   * compact request was sent to HBase and may need some time to finish the compact operation.<a name="line.359"></a>
-<span class="sourceLineNo">360</span>   * @param regionName region to compact<a name="line.360"></a>
-<span class="sourceLineNo">361</span>   */<a name="line.361"></a>
-<span class="sourceLineNo">362</span>  CompletableFuture&lt;Void&gt; compactRegion(byte[] regionName);<a name="line.362"></a>
-<span class="sourceLineNo">363</span><a name="line.363"></a>
-<span class="sourceLineNo">364</span>  /**<a name="line.364"></a>
-<span class="sourceLineNo">365</span>   * Compact a column family within a region. When the returned CompletableFuture is done, it only<a name="line.365"></a>
-<span class="sourceLineNo">366</span>   * means the compact request was sent to HBase and may need some time to finish the compact<a name="line.366"></a>
-<span class="sourceLineNo">367</span>   * operation.<a name="line.367"></a>
-<span class="sourceLineNo">368</span>   * @param regionName region to compact<a name="line.368"></a>
-<span class="sourceLineNo">369</span>   * @param columnFamily column family within a region. If not present, compact the region's all<a name="line.369"></a>
-<span class="sourceLineNo">370</span>   *          column families.<a name="line.370"></a>
-<span class="sourceLineNo">371</span>   */<a name="line.371"></a>
-<span class="sourceLineNo">372</span>  CompletableFuture&lt;Void&gt; compactRegion(byte[] regionName, byte[] columnFamily);<a name="line.372"></a>
-<span class="sourceLineNo">373</span><a name="line.373"></a>
-<span class="sourceLineNo">374</span>  /**<a name="line.374"></a>
-<span class="sourceLineNo">375</span>   * Major compact a table. When the returned CompletableFuture is done, it only means the compact<a name="line.375"></a>
-<span class="sourceLineNo">376</span>   * request was sent to HBase and may need some time to finish the compact operation.<a name="line.376"></a>
-<span class="sourceLineNo">377</span>   * @param tableName table to major compact<a name="line.377"></a>
-<span class="sourceLineNo">378</span>   */<a name="line.378"></a>
-<span class="sourceLineNo">379</span>  default CompletableFuture&lt;Void&gt; majorCompact(TableName tableName) {<a name="line.379"></a>
-<span class="sourceLineNo">380</span>    return majorCompact(tableName, CompactType.NORMAL);<a name="line.380"></a>
-<span class="sourceLineNo">381</span>  }<a name="line.381"></a>
-<span class="sourceLineNo">382</span><a name="line.382"></a>
-<span class="sourceLineNo">383</span>  /**<a name="line.383"></a>
-<span class="sourceLineNo">384</span>   * Major compact a column family within a table. When the returned CompletableFuture is done, it<a name="line.384"></a>
-<span class="sourceLineNo">385</span>   * only means the compact request was sent to HBase and may need some time to finish the compact<a name="line.385"></a>
-<span class="sourceLineNo">386</span>   * operation.<a name="line.386"></a>
-<span class="sourceLineNo">387</span>   * @param tableName table to major compact<a name="line.387"></a>
-<span class="sourceLineNo">388</span>   * @param columnFamily column family within a table. If not present, major compact the table's all<a name="line.388"></a>
-<span class="sourceLineNo">389</span>   *          column families.<a name="line.389"></a>
-<span class="sourceLineNo">390</span>   */<a name="line.390"></a>
-<span class="sourceLineNo">391</span>  default CompletableFuture&lt;Void&gt; majorCompact(TableName tableName, byte[] columnFamily) {<a name="line.391"></a>
-<span class="sourceLineNo">392</span>    return majorCompact(tableName, columnFamily, CompactType.NORMAL);<a name="line.392"></a>
-<span class="sourceLineNo">393</span>  }<a name="line.393"></a>
-<span class="sourceLineNo">394</span><a name="line.394"></a>
-<span class="sourceLineNo">395</span>  /**<a name="line.395"></a>
-<span class="sourceLineNo">396</span>   * Major compact a table. When the returned CompletableFuture is done, it only means the compact<a name="line.396"></a>
-<span class="sourceLineNo">397</span>   * request was sent to HBase and may need some time to finish the compact operation.<a name="line.397"></a>
+<span class="sourceLineNo">295</span>   * Flush an individual region.<a name="line.295"></a>
+<span class="sourceLineNo">296</span>   * @param regionName region to flush<a name="line.296"></a>
+<span class="sourceLineNo">297</span>   */<a name="line.297"></a>
+<span class="sourceLineNo">298</span>  CompletableFuture&lt;Void&gt; flushRegion(byte[] regionName);<a name="line.298"></a>
+<span class="sourceLineNo">299</span><a name="line.299"></a>
+<span class="sourceLineNo">300</span>  /**<a name="line.300"></a>
+<span class="sourceLineNo">301</span>   * Flush all region on the region server.<a name="line.301"></a>
+<span class="sourceLineNo">302</span>   * @param serverName server to flush<a name="line.302"></a>
+<span class="sourceLineNo">303</span>   */<a name="line.303"></a>
+<span class="sourceLineNo">304</span>  CompletableFuture&lt;Void&gt; flushRegionServer(ServerName serverName);<a name="line.304"></a>
+<span class="sourceLineNo">305</span><a name="line.305"></a>
+<span class="sourceLineNo">306</span>  /**<a name="line.306"></a>
+<span class="sourceLineNo">307</span>   * Compact a table. When the returned CompletableFuture is done, it only means the compact request<a name="line.307"></a>
+<span class="sourceLineNo">308</span>   * was sent to HBase and may need some time to finish the compact operation.<a name="line.308"></a>
+<span class="sourceLineNo">309</span>   * Throws {@link org.apache.hadoop.hbase.TableNotFoundException} if table not found.<a name="line.309"></a>
+<span class="sourceLineNo">310</span>   * @param tableName table to compact<a name="line.310"></a>
+<span class="sourceLineNo">311</span>   */<a name="line.311"></a>
+<span class="sourceLineNo">312</span>  default CompletableFuture&lt;Void&gt; compact(TableName tableName) {<a name="line.312"></a>
+<span class="sourceLineNo">313</span>    return compact(tableName, CompactType.NORMAL);<a name="line.313"></a>
+<span class="sourceLineNo">314</span>  }<a name="line.314"></a>
+<span class="sourceLineNo">315</span><a name="line.315"></a>
+<span class="sourceLineNo">316</span>  /**<a name="line.316"></a>
+<span class="sourceLineNo">317</span>   * Compact a column family within a table. When the returned CompletableFuture is done, it only<a name="line.317"></a>
+<span class="sourceLineNo">318</span>   * means the compact request was sent to HBase and may need some time to finish the compact<a name="line.318"></a>
+<span class="sourceLineNo">319</span>   * operation.<a name="line.319"></a>
+<span class="sourceLineNo">320</span>   * Throws {@link org.apache.hadoop.hbase.TableNotFoundException} if table not found.<a name="line.320"></a>
+<span class="sourceLineNo">321</span>   * @param tableName table to compact<a name="line.321"></a>
+<span class="sourceLineNo">322</span>   * @param columnFamily column family within a table. If not present, compact the table's all<a name="line.322"></a>
+<span class="sourceLineNo">323</span>   *          column families.<a name="line.323"></a>
+<span class="sourceLineNo">324</span>   */<a name="line.324"></a>
+<span class="sourceLineNo">325</span>  default CompletableFuture&lt;Void&gt; compact(TableName tableName, byte[] columnFamily) {<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    return compact(tableName, columnFamily, CompactType.NORMAL);<a name="line.326"></a>
+<span class="sourceLineNo">327</span>  }<a name="line.327"></a>
+<span class="sourceLineNo">328</span><a name="line.328"></a>
+<span class="sourceLineNo">329</span>  /**<a name="line.329"></a>
+<span class="sourceLineNo">330</span>   * Compact a table. When the returned CompletableFuture is done, it only means the compact request<a name="line.330"></a>
+<span class="sourceLineNo">331</span>   * was sent to HBase and may need some time to finish the compact operation.<a name="line.331"></a>
+<span class="sourceLineNo">332</span>   * Throws {@link org.apache.hadoop.hbase.TableNotFoundException} if table not found for<a name="line.332"></a>
+<span class="sourceLineNo">333</span>   * normal compaction type.<a name="line.333"></a>
+<span class="sourceLineNo">334</span>   * @param tableName table to compact<a name="line.334"></a>
+<span class="sourceLineNo">335</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.335"></a>
+<span class="sourceLineNo">336</span>   */<a name="line.336"></a>
+<span class="sourceLineNo">337</span>  CompletableFuture&lt;Void&gt; compact(TableName tableName, CompactType compactType);<a name="line.337"></a>
+<span class="sourceLineNo">338</span><a name="line.338"></a>
+<span class="sourceLineNo">339</span>  /**<a name="line.339"></a>
+<span class="sourceLineNo">340</span>   * Compact a column family within a table. When the returned CompletableFuture is done, it only<a name="line.340"></a>
+<span class="sourceLineNo">341</span>   * means the compact request was sent to HBase and may need some time to finish the compact<a name="line.341"></a>
+<span class="sourceLineNo">342</span>   * operation.<a name="line.342"></a>
+<span class="sourceLineNo">343</span>   * Throws {@link org.apache.hadoop.hbase.TableNotFoundException} if table not found for<a name="line.343"></a>
+<span class="sourceLineNo">344</span>   * normal compaction type.<a name="line.344"></a>
+<span class="sourceLineNo">345</span>   * @param tableName table to compact<a name="line.345"></a>
+<span class="sourceLineNo">346</span>   * @param columnFamily column family within a table<a name="line.346"></a>
+<span class="sourceLineNo">347</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.347"></a>
+<span class="sourceLineNo">348</span>   */<a name="line.348"></a>
+<span class="sourceLineNo">349</span>  CompletableFuture&lt;Void&gt; compact(TableName tableName, byte[] columnFamily,<a name="line.349"></a>
+<span class="sourceLineNo">350</span>      CompactType compactType);<a name="line.350"></a>
+<span class="sourceLineNo">351</span><a name="line.351"></a>
+<span class="sourceLineNo">352</span>  /**<a name="line.352"></a>
+<span class="sourceLineNo">353</span>   * Compact an individual region. When the returned CompletableFuture is done, it only means the<a name="line.353"></a>
+<span class="sourceLineNo">354</span>   * compact request was sent to HBase and may need some time to finish the compact operation.<a name="line.354"></a>
+<span class="sourceLineNo">355</span>   * @param regionName region to compact<a name="line.355"></a>
+<span class="sourceLineNo">356</span>   */<a name="line.356"></a>
+<span class="sourceLineNo">357</span>  CompletableFuture&lt;Void&gt; compactRegion(byte[] regionName);<a name="line.357"></a>
+<span class="sourceLineNo">358</span><a name="line.358"></a>
+<span class="sourceLineNo">359</span>  /**<a name="line.359"></a>
+<span class="sourceLineNo">360</span>   * Compact a column family within a region. When the returned CompletableFuture is done, it only<a name="line.360"></a>
+<span class="sourceLineNo">361</span>   * means the compact request was sent to HBase and may need some time to finish the compact<a name="line.361"></a>
+<span class="sourceLineNo">362</span>   * operation.<a name="line.362"></a>
+<span class="sourceLineNo">363</span>   * @param regionName region to compact<a name="line.363"></a>
+<span class="sourceLineNo">364</span>   * @param columnFamily column family within a region. If not present, compact the region's all<a name="line.364"></a>
+<span class="sourceLineNo">365</span>   *          column families.<a name="line.365"></a>
+<span class="sourceLineNo">366</span>   */<a name="line.366"></a>
+<span class="sourceLineNo">367</span>  CompletableFuture&lt;Void&gt; compactRegion(byte[] regionName, byte[] columnFamily);<a name="line.367"></a>
+<span class="sourceLineNo">368</span><a name="line.368"></a>
+<span class="sourceLineNo">369</span>  /**<a name="line.369"></a>
+<span class="sourceLineNo">370</span>   * Major compact a table. When the returned CompletableFuture is done, it only means the compact<a name="line.370"></a>
+<span class="sourceLineNo">371</span>   * request was sent to HBase and may need some time to finish the compact operation.<a name="line.371"></a>
+<span class="sourceLineNo">372</span>   * Throws {@link org.apache.hadoop.hbase.TableNotFoundException} if table not found.<a name="line.372"></a>
+<span class="sourceLineNo">373</span>   * @param tableName table to major compact<a name="line.373"></a>
+<span class="sourceLineNo">374</span>   */<a name="line.374"></a>
+<span class="sourceLineNo">375</span>  default CompletableFuture&lt;Void&gt; majorCompact(TableName tableName) {<a name="line.375"></a>
+<span class="sourceLineNo">376</span>    return majorCompact(tableName, CompactType.NORMAL);<a name="line.376"></a>
+<span class="sourceLineNo">377</span>  }<a name="line.377"></a>
+<span class="sourceLineNo">378</span><a name="line.378"></a>
+<span class="sourceLineNo">379</span>  /**<a name="line.379"></a>
+<span class="sourceLineNo">380</span>   * Major compact a column family within a table. When the returned CompletableFuture is done, it<a name="line.380"></a>
+<span class="sourceLineNo">381</span>   * only means the compact request was sent to HBase and may need some time to finish the compact<a name="line.381"></a>
+<span class="sourceLineNo">382</span>   * operation.<a name="line.382"></a>
+<span class="sourceLineNo">383</span>   * Throws {@link org.apache.hadoop.hbase.TableNotFoundException} if table not found for<a name="line.383"></a>
+<span class="sourceLineNo">384</span>   * normal compaction. type.<a name="line.384"></a>
+<span class="sourceLineNo">385</span>   * @param tableName table to major compact<a name="line.385"></a>
+<span class="sourceLineNo">386</span>   * @param columnFamily column family within a table. If not present, major compact the table's all<a name="line.386"></a>
+<span class="sourceLineNo">387</span>   *          column families.<a name="line.387"></a>
+<span class="sourceLineNo">388</span>   */<a name="line.388"></a>
+<span class="sourceLineNo">389</span>  default CompletableFuture&lt;Void&gt; majorCompact(TableName tableName, byte[] columnFamily) {<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    return majorCompact(tableName, columnFamily, CompactType.NORMAL);<a name="line.390"></a>
+<span class="sourceLineNo">391</span>  }<a name="line.391"></a>
+<span class="sourceLineNo">392</span><a name="line.392"></a>
+<span class="sourceLineNo">393</span>  /**<a name="line.393"></a>
+<span class="sourceLineNo">394</span>   * Major compact a table. When the returned CompletableFuture is done, it only means the compact<a name="line.394"></a>
+<span class="sourceLineNo">395</span>   * request was sent to HBase and may need some time to finish the compact operation.<a name="line.395"></a>
+<span class="sourceLineNo">396</span>   * Throws {@link org.apache.hadoop.hbase.TableNotFoundException} if table not found for<a name="line.396"></a>
+<span class="sourceLineNo">397</span>   * normal compaction type.<a name="line.397"></a>
 <span class="sourceLineNo">398</span>   * @param tableName table to major compact<a name="line.398"></a>
 <span class="sourceLineNo">399</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.399"></a>
 <span class="sourceLineNo">400</span>   */<a name="line.400"></a>
@@ -412,1050 +412,1060 @@
 <span class="sourceLineNo">404</span>   * Major compact a column family within a table. When the returned CompletableFuture is done, it<a name="line.404"></a>
 <span class="sourceLineNo">405</span>   * only means the compact request was sent to HBase and may need some time to finish the compact<a name="line.405"></a>
 <span class="sourceLineNo">406</span>   * operation.<a name="line.406"></a>
-<span class="sourceLineNo">407</span>   * @param tableName table to major compact<a name="line.407"></a>
-<span class="sourceLineNo">408</span>   * @param columnFamily column family within a table. If not present, major compact the table's all<a name="line.408"></a>
-<span class="sourceLineNo">409</span>   *          column families.<a name="line.409"></a>
-<span class="sourceLineNo">410</span>   * @param compactType {@link org.apache.hadoop.hbase.client.CompactType}<a name="line.410"></a>
-<span class="sourceLineNo">411</span>   */<a name="line.411"></a>
-<span class="sourceLineNo">412</span>  CompletableFuture&lt;Void&gt; majorCompact(TableName tableName, byte[] columnFamily,<a name="line.412"></a>
-<span class="sourceLineNo">413</span>      CompactType compactType);<a name="line.413"></a>
-<span class="sourceLineNo">414</span><a name="line.414"></a>
-<span class="sourceLineNo">415</span>  /**<a name="line.415"></a>
-<span class="sourceLineNo">416</span>   * Major compact a region. When the returned CompletableFuture is done, it only means the compact<a name="line.416"></a>
-<span class="sourceLineNo">417</span>   * request was sent to HBase and may need some time to finish the compact operation.<a name="line.417"></a>
-<span class="sourceLineNo">418</span>   * @param regionName region to major compact<a name="line.418"></a>
-<span class="sourceLineNo">419</span>   */<a name="line.419"></a>
-<span class="sourceLineNo">420</span>  CompletableFuture&lt;Void&gt; majorCompactRegion(byte[] regionName);<a name="line.420"></a>
-<span class="sourceLineNo">421</span><a name="line.421"></a>
-<span class="sourceLineNo">422</span>  /**<a name="line.422"></a>
-<span class="sourceLineNo">423</span>   * Major compact a column family within region. When the returned CompletableFuture is done, it<a name="line.423"></a>
-<span class="sourceLineNo">424</span>   * only means the compact request was sent to HBase and may need some time to finish the compact<a name="line.424"></a>
-<span class="sourceLineNo">425</span>   * operation.<a name="line.425"></a>
-<span class="sourceLineNo">426</span>   * @param regionName region to major compact<a name="line.426"></a>
-<span class="sourceLineNo">427</span>   * @param columnFamily column family within a region. If not present, major compact the region's<a name="line.427"></a>
-<span class="sourceLineNo">428</span>   *          all column families.<a name="line.428"></a>
-<span class="sourceLineNo">429</span>   */<a name="line.429"></a>
-<span class="sourceLineNo">430</span>  CompletableFuture&lt;Void&gt; majorCompactRegion(byte[] regionName, byte[] columnFamily);<a name="line.430"></a>
-<span class="sourceLineNo">431</span><a name="line.431"></a>
-<span class="sourceLineNo">432</span>  /**<a name="line.432"></a>
-<span class="sourceLineNo">433</span>   * Compact all regions on the region server.<a name="line.433"></a>
-<span class="sourceLineNo">434</span>   * @param serverName the region server name<a name="line.434"></a>
-<span class="sourceLineNo">435</span>   */<a name="line.435"></a>
-<span class="sourceLineNo">436</span>  CompletableFuture&lt;Void&gt; compactRegionServer(ServerName serverName);<a name="line.436"></a>
-<span class="sourceLineNo">437</span><a name="line.437"></a>
-<span class="sourceLineNo">438</span>  /**<a name="line.438"></a>
-<span class="sourceLineNo">439</span>   * Compact all regions on the region server.<a name="line.439"></a>
-<span class="sourceLineNo">440</span>   * @param serverName the region server name<a name="line.440"></a>
-<span class="sourceLineNo">441</span>   */<a name="line.441"></a>
-<span class="sourceLineNo">442</span>  CompletableFuture&lt;Void&gt; majorCompactRegionServer(ServerName serverName);<a name="line.442"></a>
-<span class="sourceLineNo">443</span><a name="line.443"></a>
-<span class="sourceLineNo">444</span>  /**<a name="line.444"></a>
-<span class="sourceLineNo">445</span>   * Turn the Merge switch on or off.<a name="line.445"></a>
-<span class="sourceLineNo">446</span>   * @param enabled enabled or not<a name="line.446"></a>
-<span class="sourceLineNo">447</span>   * @return Previous switch value wrapped by a {@link CompletableFuture}<a name="line.447"></a>
-<span class="sourceLineNo">448</span>   */<a name="line.448"></a>
-<span class="sourceLineNo">449</span>  default CompletableFuture&lt;Boolean&gt; mergeSwitch(boolean enabled) {<a name="line.449"></a>
-<span class="sourceLineNo">450</span>    return mergeSwitch(enabled, false);<a name="line.450"></a>
-<span class="sourceLineNo">451</span>  }<a name="line.451"></a>
-<span class="sourceLineNo">452</span><a name="line.452"></a>
-<span class="sourceLineNo">453</span>  /**<a name="line.453"></a>
-<span class="sourceLineNo">454</span>   * Turn the Merge switch on or off.<a name="line.454"></a>
-<span class="sourceLineNo">455</span>   * &lt;p/&gt;<a name="line.455"></a>
-<span class="sourceLineNo">456</span>   * Notice that, the method itself is always non-blocking, which means it will always return<a name="line.456"></a>
-<span class="sourceLineNo">457</span>   * immediately. The {@code drainMerges} parameter only effects when will we complete the returned<a name="line.457"></a>
-<span class="sourceLineNo">458</span>   * {@link CompletableFuture}.<a name="line.458"></a>
-<span class="sourceLineNo">459</span>   * @param enabled enabled or not<a name="line.459"></a>
-<span class="sourceLineNo">460</span>   * @param drainMerges If &lt;code&gt;true&lt;/code&gt;, it waits until current merge() call, if outstanding,<a name="line.460"></a>
-<span class="sourceLineNo">461</span>   *          to return.<a name="line.461"></a>
-<span class="sourceLineNo">462</span>   * @return Previous switch value wrapped by a {@link CompletableFuture}<a name="line.462"></a>
-<span class="sourceLineNo">463</span>   */<a name="line.463"></a>
-<span class="sourceLineNo">464</span>  CompletableFuture&lt;Boolean&gt; mergeSwitch(boolean enabled, boolean drainMerges);<a name="line.464"></a>
... 461786 lines suppressed ...