You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ch...@apache.org on 2017/09/14 07:20:46 UTC

hbase git commit: HBASE-18794 Remove deprecated methods in MasterObserver

Repository: hbase
Updated Branches:
  refs/heads/master d2792a07f -> 38e983ed4


HBASE-18794 Remove deprecated methods in MasterObserver


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

Branch: refs/heads/master
Commit: 38e983ed4484f60cbfc426c4ec7128c87a145096
Parents: d2792a0
Author: Chia-Ping Tsai <ch...@gmail.com>
Authored: Wed Sep 13 10:34:44 2017 +0800
Committer: Chia-Ping Tsai <ch...@gmail.com>
Committed: Thu Sep 14 15:10:20 2017 +0800

----------------------------------------------------------------------
 .../hbase/coprocessor/MasterObserver.java       | 484 -------------------
 .../hbase/master/MasterCoprocessorHost.java     |  36 --
 .../hbase/security/access/AccessController.java |   6 +-
 .../hbase/coprocessor/TestMasterObserver.java   | 181 -------
 4 files changed, 3 insertions(+), 704 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/38e983ed/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/MasterObserver.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/MasterObserver.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/MasterObserver.java
index 2f48682..9d649cc 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/MasterObserver.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/MasterObserver.java
@@ -25,9 +25,7 @@ import java.util.Set;
 
 import org.apache.hadoop.hbase.Coprocessor;
 import org.apache.hadoop.hbase.HBaseInterfaceAudience;
-import org.apache.hadoop.hbase.HColumnDescriptor;
 import org.apache.hadoop.hbase.HRegionInfo;
-import org.apache.hadoop.hbase.HTableDescriptor;
 import org.apache.hadoop.hbase.MetaMutationAnnotation;
 import org.apache.hadoop.hbase.NamespaceDescriptor;
 import org.apache.hadoop.hbase.ServerName;
@@ -105,44 +103,9 @@ public interface MasterObserver extends Coprocessor {
   /**
    * Called before a new table is created by
    * {@link org.apache.hadoop.hbase.master.HMaster}.  Called as part of create
-   * table handler and it is async to the create RPC call.
-   * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
-   * @param ctx the environment to interact with the framework and master
-   * @param desc the read-only HTableDescriptor for the table
-   * @param regions the initial regions created for the table
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-15575">HBASE-15575</a>).
-   *     Use {@link #preCreateTableAction(ObserverContext, TableDescriptor, HRegionInfo[])}.
-   */
-  @Deprecated
-  default void preCreateTableHandler(final ObserverContext<MasterCoprocessorEnvironment>
-      ctx, HTableDescriptor desc, HRegionInfo[] regions) throws IOException {}
-
-  /**
-   * Called after the createTable operation has been requested.  Called as part
-   * of create table RPC call.  Called as part of create table handler and
-   * it is async to the create RPC call.
-   * @param ctx the environment to interact with the framework and master
-   * @param desc the read-only HTableDescriptor for the table
-   * @param regions the initial regions created for the table
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *   (<a href="https://issues.apache.org/jira/browse/HBASE-15575">HBASE-15575</a>).
-   *   Use {@link #postCompletedCreateTableAction(ObserverContext, TableDescriptor, HRegionInfo[])}
-   */
-  @Deprecated
-  default void postCreateTableHandler(final ObserverContext<MasterCoprocessorEnvironment>
-  ctx, HTableDescriptor desc, HRegionInfo[] regions) throws IOException {}
-
-  /**
-   * Called before a new table is created by
-   * {@link org.apache.hadoop.hbase.master.HMaster}.  Called as part of create
    * table procedure and it is async to the create RPC call.
    * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #preCreateTableHandler(ObserverContext, HTableDescriptor, HRegionInfo[])} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param desc the TableDescriptor for the table
    * @param regions the initial regions created for the table
@@ -157,10 +120,6 @@ public interface MasterObserver extends Coprocessor {
    * of create table RPC call.  Called as part of create table procedure and
    * it is async to the create RPC call.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #postCreateTableHandler(ObserverContext, HTableDescriptor, HRegionInfo[])} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param desc the TableDescriptor for the table
    * @param regions the initial regions created for the table
@@ -191,46 +150,10 @@ public interface MasterObserver extends Coprocessor {
 
   /**
    * Called before {@link org.apache.hadoop.hbase.master.HMaster} deletes a
-   * table.  Called as part of delete table handler and
-   * it is async to the delete RPC call.
-   * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-15575">HBASE-15575</a>).
-   *     Use {@link #preDeleteTableAction(ObserverContext, TableName)}.
-   */
-  @Deprecated
-  default void preDeleteTableHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName)
-      throws IOException {}
-
-  /**
-   * Called after {@link org.apache.hadoop.hbase.master.HMaster} deletes a
-   * table.  Called as part of delete table handler and it is async to the
-   * delete RPC call.
-   * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-15575">HBASE-15575</a>).
-   *     Use {@link #postCompletedDeleteTableAction(ObserverContext, TableName)}.
-   */
-  @Deprecated
-  default void postDeleteTableHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName)
-      throws IOException {}
-
-  /**
-   * Called before {@link org.apache.hadoop.hbase.master.HMaster} deletes a
    * table.  Called as part of delete table procedure and
    * it is async to the delete RPC call.
    * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #preDeleteTableHandler(ObserverContext, TableName)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    */
@@ -244,10 +167,6 @@ public interface MasterObserver extends Coprocessor {
    * delete RPC call.
    * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #postDeleteTableHandler(ObserverContext, TableName)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    */
@@ -278,46 +197,10 @@ public interface MasterObserver extends Coprocessor {
 
   /**
    * Called before {@link org.apache.hadoop.hbase.master.HMaster} truncates a
-   * table.  Called as part of truncate table handler and it is sync
-   * to the truncate RPC call.
-   * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-15575">HBASE-15575</a>).
-   *     Use {@link #preTruncateTableAction(ObserverContext, TableName)}.
-   */
-  @Deprecated
-  default void preTruncateTableHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName)
-      throws IOException {}
-
-  /**
-   * Called after {@link org.apache.hadoop.hbase.master.HMaster} truncates a
-   * table.  Called as part of truncate table handler and it is sync to the
-   * truncate RPC call.
-   * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-15575">HBASE-15575</a>).
-   *     Use {@link #postCompletedTruncateTableAction(ObserverContext, TableName)}.
-   */
-  @Deprecated
-  default void postTruncateTableHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName)
-      throws IOException {}
-
-  /**
-   * Called before {@link org.apache.hadoop.hbase.master.HMaster} truncates a
    * table.  Called as part of truncate table procedure and it is async
    * to the truncate RPC call.
    * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #preTruncateTableHandler(ObserverContext, TableName)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    */
@@ -331,10 +214,6 @@ public interface MasterObserver extends Coprocessor {
    * truncate RPC call.
    * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #postTruncateTableHandler(ObserverContext, TableName)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    */
@@ -365,45 +244,9 @@ public interface MasterObserver extends Coprocessor {
 
   /**
    * Called prior to modifying a table's properties.  Called as part of modify
-   * table handler and it is async to the modify table RPC call.
-   * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param htd the read-only HTableDescriptor
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-15575">HBASE-15575</a>).
-   *     Use {@link #preModifyTableAction(ObserverContext, TableName, TableDescriptor)}.
-   */
-  @Deprecated
-  default void preModifyTableHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      final TableName tableName, HTableDescriptor htd) throws IOException {}
-
-  /**
-   * Called after to modifying a table's properties.  Called as part of modify
-   * table handler and it is async to the modify table RPC call.
-   * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param htd the read-only HTableDescriptor
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>).
-   *     Use {@link #postCompletedModifyTableAction(ObserverContext, TableName, TableDescriptor)}.
-   */
-  @Deprecated
-  default void postModifyTableHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      final TableName tableName, HTableDescriptor htd) throws IOException {}
-
-  /**
-   * Called prior to modifying a table's properties.  Called as part of modify
    * table procedure and it is async to the modify table RPC call.
    * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #preModifyTableHandler(ObserverContext, TableName, HTableDescriptor)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    * @param htd the TableDescriptor
@@ -418,10 +261,6 @@ public interface MasterObserver extends Coprocessor {
    * table procedure and it is async to the modify table RPC call.
    * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #postModifyTableHandler(ObserverContext, TableName, HTableDescriptor)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    * @param htd the TableDescriptor
@@ -434,24 +273,6 @@ public interface MasterObserver extends Coprocessor {
   /**
    * Called prior to adding a new column family to the table.  Called as part of
    * add column RPC call.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param columnFamily the read-only HColumnDescriptor
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *             (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>).
-   *             Use {@link #preAddColumnFamily(ObserverContext, TableName, ColumnFamilyDescriptor)}.
-   */
-  @Deprecated
-  default void preAddColumn(final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      TableName tableName, HColumnDescriptor columnFamily) throws IOException {}
-
-  /**
-   * Called prior to adding a new column family to the table.  Called as part of
-   * add column RPC call.
-   *
-   * Implementation note: This replaces the deprecated
-   * {@link #preAddColumn(ObserverContext, TableName, HColumnDescriptor)} method.
-   * Make sure to implement only one of the two as both are called.
    *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
@@ -463,24 +284,6 @@ public interface MasterObserver extends Coprocessor {
   /**
    * Called after the new column family has been created.  Called as part of
    * add column RPC call.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param columnFamily the read-only HColumnDescriptor
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *             (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>).
-   *             Use {@link #postAddColumnFamily(ObserverContext, TableName, ColumnFamilyDescriptor)}.
-   */
-  @Deprecated
-  default void postAddColumn(final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      TableName tableName, HColumnDescriptor columnFamily) throws IOException {}
-
-  /**
-   * Called after the new column family has been created.  Called as part of
-   * add column RPC call.
-   *
-   * Implementation note: This replaces the deprecated
-   * {@link #postAddColumn(ObserverContext, TableName, HColumnDescriptor)} method.
-   * Make sure to implement only one of the two as both are called.
    *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
@@ -491,27 +294,8 @@ public interface MasterObserver extends Coprocessor {
 
   /**
    * Called prior to adding a new column family to the table.  Called as part of
-   * add column handler.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param columnFamily the read-only HColumnDescriptor
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *          (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>). Use
-   *          {@link #preAddColumnFamilyAction(ObserverContext, TableName, ColumnFamilyDescriptor)}.
-   */
-  @Deprecated
-  default void preAddColumnHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      TableName tableName, HColumnDescriptor columnFamily) throws IOException {}
-
-  /**
-   * Called prior to adding a new column family to the table.  Called as part of
    * add column procedure.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #preAddColumnHandler(ObserverContext, TableName, HColumnDescriptor)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    * @param columnFamily the ColumnFamilyDescriptor
@@ -523,27 +307,8 @@ public interface MasterObserver extends Coprocessor {
 
   /**
    * Called after the new column family has been created.  Called as part of
-   * add column handler.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param columnFamily the read-only HColumnDescriptor
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>). Use
-   *     {@link #postCompletedAddColumnFamilyAction(ObserverContext, TableName, ColumnFamilyDescriptor)}.
-   */
-  @Deprecated
-  default void postAddColumnHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      TableName tableName, HColumnDescriptor columnFamily) throws IOException {}
-
-  /**
-   * Called after the new column family has been created.  Called as part of
    * add column procedure.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #postAddColumnHandler(ObserverContext, TableName, HColumnDescriptor)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    * @param columnFamily the ColumnFamilyDescriptor
@@ -556,24 +321,6 @@ public interface MasterObserver extends Coprocessor {
   /**
    * Called prior to modifying a column family's attributes.  Called as part of
    * modify column RPC call.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param columnFamily the read-only HColumnDescriptor
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *             (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>).
-   *             Use {@link #preModifyColumnFamily(ObserverContext, TableName, ColumnFamilyDescriptor)}.
-   */
-  @Deprecated
-  default void preModifyColumn(final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      TableName tableName, HColumnDescriptor columnFamily) throws IOException {}
-
-  /**
-   * Called prior to modifying a column family's attributes.  Called as part of
-   * modify column RPC call.
-   *
-   * Implementation note: This replaces the deprecated
-   * {@link #preModifyColumn(ObserverContext, TableName, HColumnDescriptor)} method.
-   * Make sure to implement only one of the two as both are called.
    *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
@@ -585,24 +332,6 @@ public interface MasterObserver extends Coprocessor {
   /**
    * Called after the column family has been updated.  Called as part of modify
    * column RPC call.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param columnFamily the read-only HColumnDescriptor
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *             (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>).
-   *             Use {@link #postModifyColumnFamily(ObserverContext, TableName, ColumnFamilyDescriptor)}.
-   */
-  @Deprecated
-  default void postModifyColumn(final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      TableName tableName, HColumnDescriptor columnFamily) throws IOException {}
-
-  /**
-   * Called after the column family has been updated.  Called as part of modify
-   * column RPC call.
-   *
-   * Implementation note: This replaces the deprecated
-   * {@link #postModifyColumn(ObserverContext, TableName, HColumnDescriptor)} method.
-   * Make sure to implement only one of the two as both are called.
    *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
@@ -613,27 +342,8 @@ public interface MasterObserver extends Coprocessor {
 
   /**
    * Called prior to modifying a column family's attributes.  Called as part of
-   * modify column handler.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param columnFamily the read-only HColumnDescriptor
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>).
-   *     Use {@link #preModifyColumnFamilyAction(ObserverContext, TableName, ColumnFamilyDescriptor)}.
-   */
-  @Deprecated
-  default void preModifyColumnHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      TableName tableName, HColumnDescriptor columnFamily) throws IOException {}
-
-  /**
-   * Called prior to modifying a column family's attributes.  Called as part of
    * modify column procedure.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #preModifyColumnHandler(ObserverContext, TableName, HColumnDescriptor)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    * @param columnFamily the ColumnFamilyDescriptor
@@ -645,27 +355,8 @@ public interface MasterObserver extends Coprocessor {
 
   /**
    * Called after the column family has been updated.  Called as part of modify
-   * column handler.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param columnFamily the read-only HColumnDescriptor
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *   (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>). Use
-   *   {@link #postCompletedModifyColumnFamilyAction(ObserverContext,TableName,ColumnFamilyDescriptor)}.
-   */
-  @Deprecated
-  default void postModifyColumnHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      TableName tableName, HColumnDescriptor columnFamily) throws IOException {}
-
-  /**
-   * Called after the column family has been updated.  Called as part of modify
    * column procedure.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #postModifyColumnHandler(ObserverContext, TableName, HColumnDescriptor)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    * @param columnFamily the ColumnFamilyDescriptor
@@ -678,24 +369,6 @@ public interface MasterObserver extends Coprocessor {
   /**
    * Called prior to deleting the entire column family.  Called as part of
    * delete column RPC call.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param columnFamily the column family
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *             (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>).
-   *             Use {@link #preDeleteColumnFamily(ObserverContext, TableName, byte[])}.
-   */
-  @Deprecated
-  default void preDeleteColumn(final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      final TableName tableName, final byte[] columnFamily) throws IOException {}
-
-  /**
-   * Called prior to deleting the entire column family.  Called as part of
-   * delete column RPC call.
-   *
-   * Implementation note: This replaces the deprecated
-   * {@link #preDeleteColumn(ObserverContext, TableName, byte[])} method.
-   * Make sure to implement only one of the two as both are called.
    *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
@@ -707,24 +380,6 @@ public interface MasterObserver extends Coprocessor {
   /**
    * Called after the column family has been deleted.  Called as part of delete
    * column RPC call.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param columnFamily the column family
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *             (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>).
-   *             Use {@link #postDeleteColumnFamily(ObserverContext, TableName, byte[])}.
-   */
-  @Deprecated
-  default void postDeleteColumn(final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      final TableName tableName, final byte[] columnFamily) throws IOException {}
-
-  /**
-   * Called after the column family has been deleted.  Called as part of delete
-   * column RPC call.
-   *
-   * Implementation note: This replaces the deprecated
-   * {@link #postDeleteColumn(ObserverContext, TableName, byte[])} method.
-   * Make sure to implement only one of the two as both are called.
    *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
@@ -735,27 +390,8 @@ public interface MasterObserver extends Coprocessor {
 
   /**
    * Called prior to deleting the entire column family.  Called as part of
-   * delete column handler.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param columnFamily the column family
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *             (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>).
-   *             Use {@link #preDeleteColumnFamilyAction(ObserverContext, TableName, byte[])}.
-   */
-  @Deprecated
-  default void preDeleteColumnHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      final TableName tableName, final byte[] columnFamily) throws IOException {}
-
-  /**
-   * Called prior to deleting the entire column family.  Called as part of
    * delete column procedure.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #preDeleteColumnHandler(ObserverContext, TableName, byte[])} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    * @param columnFamily the column family
@@ -766,27 +402,8 @@ public interface MasterObserver extends Coprocessor {
 
   /**
    * Called after the column family has been deleted.  Called as part of
-   * delete column handler.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @param columnFamily the column family
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *         (<a href="https://issues.apache.org/jira/browse/HBASE-13645">HBASE-13645</a>).
-   *         Use {@link #postCompletedDeleteColumnFamilyAction(ObserverContext, TableName, byte[])}.
-   */
-  @Deprecated
-  default void postDeleteColumnHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      final TableName tableName, final byte[] columnFamily) throws IOException {}
-
-  /**
-   * Called after the column family has been deleted.  Called as part of
    * delete column procedure.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #postDeleteColumnHandler(ObserverContext, TableName, byte[])} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    * @param columnFamily the column family
@@ -814,43 +431,10 @@ public interface MasterObserver extends Coprocessor {
       final TableName tableName) throws IOException {}
 
   /**
-   * Called prior to enabling a table.  Called as part of enable table handler
-   * and it is async to the enable table RPC call.
-   * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-15575">HBASE-15575</a>).
-   *     Use {@link #preEnableTableAction(ObserverContext, TableName)}.
-   */
-  @Deprecated
-  default void preEnableTableHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      final TableName tableName) throws IOException {}
-
-  /**
-   * Called after the enableTable operation has been requested.  Called as part
-   * of enable table handler and it is async to the enable table RPC call.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-15575">HBASE-15575</a>).
-   *     Use {@link #postCompletedEnableTableAction(ObserverContext, TableName)}.
-   */
-  @Deprecated
-  default void postEnableTableHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      final TableName tableName) throws IOException {}
-
-  /**
    * Called prior to enabling a table.  Called as part of enable table procedure
    * and it is async to the enable table RPC call.
    * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #preEnableTableHandler(ObserverContext, TableName)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    */
@@ -862,10 +446,6 @@ public interface MasterObserver extends Coprocessor {
    * Called after the enableTable operation has been requested.  Called as part
    * of enable table procedure and it is async to the enable table RPC call.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #postEnableTableHandler(ObserverContext, TableName)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    */
@@ -893,43 +473,10 @@ public interface MasterObserver extends Coprocessor {
       final TableName tableName) throws IOException {}
 
   /**
-   * Called prior to disabling a table.  Called as part of disable table handler
-   * and it is asyn to the disable table RPC call.
-   * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-15575">HBASE-15575</a>).
-   *     Use {@link #preDisableTableAction(ObserverContext, TableName)}.
-   */
-  @Deprecated
-  default void preDisableTableHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      final TableName tableName) throws IOException {}
-
-  /**
-   * Called after the disableTable operation has been requested.  Called as part
-   * of disable table handler and it is asyn to the disable table RPC call.
-   * @param ctx the environment to interact with the framework and master
-   * @param tableName the name of the table
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *     (<a href="https://issues.apache.org/jira/browse/HBASE-15575">HBASE-15575</a>).
-   *     Use {@link #postCompletedDisableTableAction(ObserverContext, TableName)}.
-   */
-  @Deprecated
-  default void postDisableTableHandler(
-      final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      final TableName tableName) throws IOException {}
-
-  /**
    * Called prior to disabling a table.  Called as part of disable table procedure
    * and it is asyn to the disable table RPC call.
    * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #preDisableTableHandler(ObserverContext, TableName)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    */
@@ -941,10 +488,6 @@ public interface MasterObserver extends Coprocessor {
    * Called after the disableTable operation has been requested.  Called as part
    * of disable table procedure and it is asyn to the disable table RPC call.
    *
-   * Implementation note: This replaces the deprecated
-   * {@link #postDisableTableHandler(ObserverContext, TableName)} method.
-   * Make sure to implement only one of the two as both are called.
-   *
    * @param ctx the environment to interact with the framework and master
    * @param tableName the name of the table
    */
@@ -1623,33 +1166,6 @@ public interface MasterObserver extends Coprocessor {
       final String namespace, final Quotas quotas) throws IOException {}
 
   /**
-   * Called before dispatching region merge request.
-   * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
-   * @param ctx coprocessor environment
-   * @param regionA first region to be merged
-   * @param regionB second region to be merged
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *   (<a href="https://issues.apache.org/jira/browse/HBASE-">HBASE-</a>).
-   *   Use {@link #preMergeRegions(ObserverContext, HRegionInfo[])}
-   */
-  @Deprecated
-  default void preDispatchMerge(final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      HRegionInfo regionA, HRegionInfo regionB) throws IOException {}
-
-  /**
-   * called after dispatching the region merge request.
-   * @param c coprocessor environment
-   * @param regionA first region to be merged
-   * @param regionB second region to be merged
-   * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0
-   *   (<a href="https://issues.apache.org/jira/browse/HBASE-">HBASE-</a>).
-   *   Use {@link #postMergeRegions(ObserverContext, HRegionInfo[])}
-   */
-  @Deprecated
-  default void postDispatchMerge(final ObserverContext<MasterCoprocessorEnvironment> c,
-      final HRegionInfo regionA, final HRegionInfo regionB) throws IOException {}
-
-  /**
    * Called before merge regions request.
    * It can't bypass the default action, e.g., ctx.bypass() won't have effect.
    * @param ctx coprocessor environment

http://git-wip-us.apache.org/repos/asf/hbase/blob/38e983ed/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterCoprocessorHost.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterCoprocessorHost.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterCoprocessorHost.java
index 806742b..f0ce714 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterCoprocessorHost.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterCoprocessorHost.java
@@ -28,17 +28,13 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hbase.Coprocessor;
-import org.apache.hadoop.hbase.HColumnDescriptor;
 import org.apache.hadoop.hbase.HRegionInfo;
-import org.apache.hadoop.hbase.HTableDescriptor;
 import org.apache.hadoop.hbase.MetaMutationAnnotation;
 import org.apache.hadoop.hbase.NamespaceDescriptor;
 import org.apache.hadoop.hbase.ServerName;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.yetus.audience.InterfaceAudience;
 import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;
-import org.apache.hadoop.hbase.client.ImmutableHColumnDescriptor;
-import org.apache.hadoop.hbase.client.ImmutableHTableDescriptor;
 import org.apache.hadoop.hbase.client.MasterSwitchType;
 import org.apache.hadoop.hbase.client.Mutation;
 import org.apache.hadoop.hbase.client.TableDescriptor;
@@ -275,7 +271,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.preCreateTableHandler(ctx, toImmutableHTableDescriptor(htd), regions);
         oserver.preCreateTableAction(ctx, htd, regions);
       }
     });
@@ -287,7 +282,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.postCreateTableHandler(ctx, toImmutableHTableDescriptor(htd), regions);
         oserver.postCompletedCreateTableAction(ctx, htd, regions);
       }
     });
@@ -318,7 +312,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.preDeleteTableHandler(ctx, tableName);
         oserver.preDeleteTableAction(ctx, tableName);
       }
     });
@@ -330,7 +323,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.postDeleteTableHandler(ctx, tableName);
         oserver.postCompletedDeleteTableAction(ctx, tableName);
       }
     });
@@ -361,7 +353,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.preTruncateTableHandler(ctx, tableName);
         oserver.preTruncateTableAction(ctx, tableName);
       }
     });
@@ -373,7 +364,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.postTruncateTableHandler(ctx, tableName);
         oserver.postCompletedTruncateTableAction(ctx, tableName);
       }
     });
@@ -408,7 +398,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.preModifyTableHandler(ctx, tableName, toImmutableHTableDescriptor(htd));
         oserver.preModifyTableAction(ctx, tableName, htd);
       }
     });
@@ -421,7 +410,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.postModifyTableHandler(ctx, tableName, toImmutableHTableDescriptor(htd));
         oserver.postCompletedModifyTableAction(ctx, tableName, htd);
       }
     });
@@ -433,7 +421,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.preAddColumn(ctx, tableName, toImmutableHColumnDescriptor(columnFamily));
         oserver.preAddColumnFamily(ctx, tableName, columnFamily);
       }
     });
@@ -445,7 +432,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.postAddColumn(ctx, tableName, toImmutableHColumnDescriptor(columnFamily));
         oserver.postAddColumnFamily(ctx, tableName, columnFamily);
       }
     });
@@ -460,7 +446,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.preAddColumnHandler(ctx, tableName, toImmutableHColumnDescriptor(columnFamily));
         oserver.preAddColumnFamilyAction(ctx, tableName, columnFamily);
       }
     });
@@ -475,7 +460,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.postAddColumnHandler(ctx, tableName, toImmutableHColumnDescriptor(columnFamily));
         oserver.postCompletedAddColumnFamilyAction(ctx, tableName, columnFamily);
       }
     });
@@ -487,7 +471,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.preModifyColumn(ctx, tableName, toImmutableHColumnDescriptor(columnFamily));
         oserver.preModifyColumnFamily(ctx, tableName, columnFamily);
       }
     });
@@ -499,7 +482,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.postModifyColumn(ctx, tableName, toImmutableHColumnDescriptor(columnFamily));
         oserver.postModifyColumnFamily(ctx, tableName, columnFamily);
       }
     });
@@ -513,7 +495,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.preModifyColumnHandler(ctx, tableName, toImmutableHColumnDescriptor(columnFamily));
         oserver.preModifyColumnFamilyAction(ctx, tableName, columnFamily);
       }
     });
@@ -527,7 +508,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.postModifyColumnHandler(ctx, tableName, toImmutableHColumnDescriptor(columnFamily));
         oserver.postCompletedModifyColumnFamilyAction(ctx, tableName, columnFamily);
       }
     });
@@ -539,7 +519,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.preDeleteColumn(ctx, tableName, columnFamily);
         oserver.preDeleteColumnFamily(ctx, tableName, columnFamily);
       }
     });
@@ -551,7 +530,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.postDeleteColumn(ctx, tableName, columnFamily);
         oserver.postDeleteColumnFamily(ctx, tableName, columnFamily);
       }
     });
@@ -566,7 +544,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.preDeleteColumnHandler(ctx, tableName, columnFamily);
         oserver.preDeleteColumnFamilyAction(ctx, tableName, columnFamily);
       }
     });
@@ -578,7 +555,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.postDeleteColumnHandler(ctx, tableName, columnFamily);
         oserver.postCompletedDeleteColumnFamilyAction(ctx, tableName, columnFamily);
       }
     });
@@ -609,7 +585,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.preEnableTableHandler(ctx, tableName);
         oserver.preEnableTableAction(ctx, tableName);
       }
     });
@@ -621,7 +596,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.postEnableTableHandler(ctx, tableName);
         oserver.postCompletedEnableTableAction(ctx, tableName);
       }
     });
@@ -652,7 +626,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.preDisableTableHandler(ctx, tableName);
         oserver.preDisableTableAction(ctx, tableName);
       }
     });
@@ -664,7 +637,6 @@ public class MasterCoprocessorHost
       @Override
       public void call(MasterObserver oserver, ObserverContext<MasterCoprocessorEnvironment> ctx)
           throws IOException {
-        oserver.postDisableTableHandler(ctx, tableName);
         oserver.postCompletedDisableTableAction(ctx, tableName);
       }
     });
@@ -1918,12 +1890,4 @@ public class MasterCoprocessorHost
       }
     });
   }
-
-  private static ImmutableHTableDescriptor toImmutableHTableDescriptor(TableDescriptor desc) {
-    return new ImmutableHTableDescriptor(desc);
-  }
-
-  private static ImmutableHColumnDescriptor toImmutableHColumnDescriptor(ColumnFamilyDescriptor desc) {
-    return new ImmutableHColumnDescriptor(desc);
-  }
 }

http://git-wip-us.apache.org/repos/asf/hbase/blob/38e983ed/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java
index 931386e..f7d70d2 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java
@@ -2566,9 +2566,9 @@ public class AccessController implements MasterObserver, RegionObserver, RegionS
   }
 
   @Override
-  public void preDispatchMerge(final ObserverContext<MasterCoprocessorEnvironment> ctx,
-      HRegionInfo regionA, HRegionInfo regionB) throws IOException {
-    requirePermission(getActiveUser(ctx), "mergeRegions", regionA.getTable(), null, null,
+  public void preMergeRegions(final ObserverContext<MasterCoprocessorEnvironment> ctx,
+                              final HRegionInfo[] regionsToMerge) throws IOException {
+    requirePermission(getActiveUser(ctx), "mergeRegions", regionsToMerge[0].getTable(), null, null,
       Action.ADMIN);
   }
 

http://git-wip-us.apache.org/repos/asf/hbase/blob/38e983ed/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterObserver.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterObserver.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterObserver.java
index 49ab418..fbfeb50 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterObserver.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterObserver.java
@@ -181,8 +181,6 @@ public class TestMasterObserver {
     private boolean postGetTableDescriptorsCalled;
     private boolean postGetTableNamesCalled;
     private boolean preGetTableNamesCalled;
-    private boolean preDispatchMergeCalled;
-    private boolean postDispatchMergeCalled;
     private boolean preMergeRegionsCalled;
     private boolean postMergeRegionsCalled;
     private boolean preRequestLockCalled;
@@ -275,8 +273,6 @@ public class TestMasterObserver {
       postGetTableDescriptorsCalled = false;
       postGetTableNamesCalled = false;
       preGetTableNamesCalled = false;
-      preDispatchMergeCalled = false;
-      postDispatchMergeCalled = false;
       preMergeRegionsCalled = false;
       postMergeRegionsCalled = false;
       preRequestLockCalled = false;
@@ -304,22 +300,6 @@ public class TestMasterObserver {
     }
 
     @Override
-    public void preDispatchMerge(final ObserverContext<MasterCoprocessorEnvironment> ctx,
-        HRegionInfo regionA, HRegionInfo regionB) throws IOException {
-      preDispatchMergeCalled = true;
-    }
-
-    @Override
-    public void postDispatchMerge(final ObserverContext<MasterCoprocessorEnvironment> ctx,
-        HRegionInfo regionA, HRegionInfo regionB) throws IOException {
-      postDispatchMergeCalled = true;
-    }
-
-    public boolean wasDispatchMergeCalled() {
-      return preDispatchMergeCalled && postDispatchMergeCalled;
-    }
-
-    @Override
     public void preCreateTable(ObserverContext<MasterCoprocessorEnvironment> env,
         TableDescriptor desc, HRegionInfo[] regions) throws IOException {
       if (bypass) {
@@ -533,13 +513,6 @@ public class TestMasterObserver {
       return preListNamespaceDescriptorsCalled && !postListNamespaceDescriptorsCalled;
     }
 
-    @Deprecated
-    @Override
-    public void preAddColumn(ObserverContext<MasterCoprocessorEnvironment> ctx,
-        TableName tableName, HColumnDescriptor columnFamily
-    ) throws IOException {
-    }
-
     @Override
     public void preAddColumnFamily(ObserverContext<MasterCoprocessorEnvironment> ctx,
         TableName tableName, ColumnFamilyDescriptor columnFamily
@@ -553,12 +526,6 @@ public class TestMasterObserver {
       preAddColumnCalled = true;
     }
 
-    @Deprecated
-    @Override
-    public void postAddColumn(ObserverContext<MasterCoprocessorEnvironment> ctx,
-        TableName tableName, HColumnDescriptor columnFamily) throws IOException {
-    }
-
     @Override
     public void postAddColumnFamily(ObserverContext<MasterCoprocessorEnvironment> ctx,
         TableName tableName, ColumnFamilyDescriptor columnFamily) throws IOException {
@@ -573,12 +540,6 @@ public class TestMasterObserver {
       return preAddColumnCalled && !postAddColumnCalled;
     }
 
-    @Deprecated
-    @Override
-    public void preModifyColumn(ObserverContext<MasterCoprocessorEnvironment> ctx,
-        TableName tableName, HColumnDescriptor columnFamily) throws IOException {
-    }
-
     @Override
     public void preModifyColumnFamily(ObserverContext<MasterCoprocessorEnvironment> ctx,
         TableName tableName, ColumnFamilyDescriptor columnFamily) throws IOException {
@@ -588,12 +549,6 @@ public class TestMasterObserver {
       preModifyColumnCalled = true;
     }
 
-    @Deprecated
-    @Override
-    public void postModifyColumn(ObserverContext<MasterCoprocessorEnvironment> ctx,
-        TableName tableName, HColumnDescriptor columnFamily) throws IOException {
-    }
-
     @Override
     public void postModifyColumnFamily(ObserverContext<MasterCoprocessorEnvironment> ctx,
         TableName tableName, ColumnFamilyDescriptor columnFamily) throws IOException {
@@ -608,12 +563,6 @@ public class TestMasterObserver {
       return preModifyColumnCalled && !postModifyColumnCalled;
     }
 
-    @Deprecated
-    @Override
-    public void preDeleteColumn(ObserverContext<MasterCoprocessorEnvironment> ctx,
-        TableName tableName, byte[] columnFamily) throws IOException {
-    }
-
     @Override
     public void preDeleteColumnFamily(ObserverContext<MasterCoprocessorEnvironment> ctx,
         TableName tableName, byte[] columnFamily) throws IOException {
@@ -623,12 +572,6 @@ public class TestMasterObserver {
       preDeleteColumnCalled = true;
     }
 
-    @Deprecated
-    @Override
-    public void postDeleteColumn(ObserverContext<MasterCoprocessorEnvironment> ctx,
-        TableName tableName, byte[] columnFamily) throws IOException {
-    }
-
     @Override
     public void postDeleteColumnFamily(ObserverContext<MasterCoprocessorEnvironment> ctx,
         TableName tableName, byte[] columnFamily) throws IOException {
@@ -1030,13 +973,6 @@ public class TestMasterObserver {
       return preDeleteSnapshotCalled && postDeleteSnapshotCalled;
     }
 
-    @Deprecated
-    @Override
-    public void preCreateTableHandler(
-        ObserverContext<MasterCoprocessorEnvironment> env,
-        HTableDescriptor desc, HRegionInfo[] regions) throws IOException {
-    }
-
     @Override
     public void preCreateTableAction(
         final ObserverContext<MasterCoprocessorEnvironment> env,
@@ -1048,13 +984,6 @@ public class TestMasterObserver {
       preCreateTableActionCalled = true;
     }
 
-    @Deprecated
-    @Override
-    public void postCreateTableHandler(
-        ObserverContext<MasterCoprocessorEnvironment> ctx,
-        HTableDescriptor desc, HRegionInfo[] regions) throws IOException {
-    }
-
     @Override
     public void postCompletedCreateTableAction(
         final ObserverContext<MasterCoprocessorEnvironment> ctx,
@@ -1075,20 +1004,6 @@ public class TestMasterObserver {
       return preCreateTableActionCalled && !postCompletedCreateTableActionCalled;
     }
 
-    @Deprecated
-    @Override
-    public void preDeleteTableHandler(
-        ObserverContext<MasterCoprocessorEnvironment> env, TableName tableName)
-        throws IOException {
-    }
-
-    @Deprecated
-    @Override
-    public void postDeleteTableHandler(
-        ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName)
-        throws IOException {
-    }
-
     @Override
     public void preDeleteTableAction(
         final ObserverContext<MasterCoprocessorEnvironment> env, final TableName tableName)
@@ -1115,20 +1030,6 @@ public class TestMasterObserver {
       return preDeleteTableActionCalled && !postCompletedDeleteTableActionCalled;
     }
 
-    @Deprecated
-    @Override
-    public void preTruncateTableHandler(
-        ObserverContext<MasterCoprocessorEnvironment> env, TableName tableName)
-        throws IOException {
-    }
-
-    @Deprecated
-    @Override
-    public void postTruncateTableHandler(
-        ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName)
-        throws IOException {
-    }
-
     @Override
     public void preTruncateTableAction(
         final ObserverContext<MasterCoprocessorEnvironment> env, final TableName tableName)
@@ -1154,20 +1055,6 @@ public class TestMasterObserver {
       return preTruncateTableActionCalled && !postCompletedTruncateTableActionCalled;
     }
 
-    @Deprecated
-    @Override
-    public void preModifyTableHandler(
-        ObserverContext<MasterCoprocessorEnvironment> env, TableName tableName,
-        HTableDescriptor htd) throws IOException {
-    }
-
-    @Deprecated
-    @Override
-    public void postModifyTableHandler(
-        ObserverContext<MasterCoprocessorEnvironment> env, TableName tableName,
-        HTableDescriptor htd) throws IOException {
-    }
-
     @Override
     public void preModifyTableAction(
         final ObserverContext<MasterCoprocessorEnvironment> env,
@@ -1195,13 +1082,6 @@ public class TestMasterObserver {
       return preModifyTableActionCalled && !postCompletedModifyTableActionCalled;
     }
 
-    @Deprecated
-    @Override
-    public void preAddColumnHandler(
-        ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName,
-        HColumnDescriptor columnFamily) throws IOException {
-    }
-
     @Override
     public void preAddColumnFamilyAction(
         final ObserverContext<MasterCoprocessorEnvironment> ctx,
@@ -1213,13 +1093,6 @@ public class TestMasterObserver {
       preAddColumnFamilyActionCalled = true;
     }
 
-    @Deprecated
-    @Override
-    public void postAddColumnHandler(
-        ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName,
-        HColumnDescriptor columnFamily) throws IOException {
-    }
-
     @Override
     public void postCompletedAddColumnFamilyAction(
         final ObserverContext<MasterCoprocessorEnvironment> ctx,
@@ -1236,13 +1109,6 @@ public class TestMasterObserver {
       return preAddColumnFamilyActionCalled && !postCompletedAddColumnFamilyActionCalled;
     }
 
-    @Deprecated
-    @Override
-    public void preModifyColumnHandler(
-        ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName,
-        HColumnDescriptor columnFamily) throws IOException {
-    }
-
     @Override
     public void preModifyColumnFamilyAction(
         final ObserverContext<MasterCoprocessorEnvironment> ctx,
@@ -1254,13 +1120,6 @@ public class TestMasterObserver {
       preModifyColumnFamilyActionCalled = true;
     }
 
-    @Deprecated
-    @Override
-    public void postModifyColumnHandler(
-        ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName,
-        HColumnDescriptor columnFamily) throws IOException {
-    }
-
     @Override
     public void postCompletedModifyColumnFamilyAction(
         ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName,
@@ -1276,13 +1135,6 @@ public class TestMasterObserver {
       return preModifyColumnFamilyActionCalled && !postCompletedModifyColumnFamilyActionCalled;
     }
 
-    @Deprecated
-    @Override
-    public void preDeleteColumnHandler(
-        ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName,
-        byte[] columnFamily) throws IOException {
-    }
-
     @Override
     public void preDeleteColumnFamilyAction(
         final ObserverContext<MasterCoprocessorEnvironment> ctx,
@@ -1294,13 +1146,6 @@ public class TestMasterObserver {
       preDeleteColumnFamilyActionCalled = true;
     }
 
-    @Deprecated
-    @Override
-    public void postDeleteColumnHandler(
-        ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName,
-        byte[] columnFamily) throws IOException {
-    }
-
     @Override
     public void postCompletedDeleteColumnFamilyAction(
         final ObserverContext<MasterCoprocessorEnvironment> ctx,
@@ -1317,20 +1162,6 @@ public class TestMasterObserver {
       return preDeleteColumnFamilyActionCalled && !postCompletedDeleteColumnFamilyActionCalled;
     }
 
-    @Deprecated
-    @Override
-    public void preEnableTableHandler(
-        ObserverContext<MasterCoprocessorEnvironment> env, TableName tableName)
-        throws IOException {
-    }
-
-    @Deprecated
-    @Override
-    public void postEnableTableHandler(
-        ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName)
-        throws IOException {
-    }
-
     @Override
     public void preEnableTableAction(
         final ObserverContext<MasterCoprocessorEnvironment> ctx, final TableName tableName)
@@ -1357,18 +1188,6 @@ public class TestMasterObserver {
     }
 
     @Override
-    public void preDisableTableHandler(
-        ObserverContext<MasterCoprocessorEnvironment> env, TableName tableName)
-        throws IOException {
-    }
-
-    @Override
-    public void postDisableTableHandler(
-        ObserverContext<MasterCoprocessorEnvironment> ctx, TableName tableName)
-        throws IOException {
-    }
-
-    @Override
     public void preDisableTableAction(
         final ObserverContext<MasterCoprocessorEnvironment> ctx, final TableName tableName)
         throws IOException {