.../hadoop/hbase/master/handler/TruncateTableHandler.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/TruncateTableHandler.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/TruncateTableHandler.java index 600ae44..e3be33b 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/TruncateTableHandler.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/TruncateTableHandler.java @@ -70,8 +70,19 @@ public class TruncateTableHandler extends DeleteTableHandler { // 1. Wait because of region in transition waitRegionInTransition(regions); + try { // 2. Remove table from hbase:meta and HDFS removeTableData(regions); + } finally { + + AssignmentManager am = this.masterServices.getAssignmentManager(); + // Clean up regions of the table in RegionStates. + LOG.debug("Removing '" + tableName + "' from region states."); + am.getRegionStates().tableDeleted(tableName); + // If entry for this table in zk, and up in AssignmentManager, remove it. + LOG.debug("Marking '" + tableName + "' as deleted."); + am.getTableStateManager().setDeletedTable(tableName); + } // ----------------------------------------------------------------------- // PONR: At this point the table is deleted.