From 85ee0b3f64b3dd4ed40a139d61ed744888ab1668 Mon Sep 17 00:00:00 2001 From: Apekshit Sharma Date: Thu, 14 Dec 2017 02:14:27 -0800 Subject: [PATCH] HBASE-19457 Fix TruncateTableProcedure. Do not delete table state from meta. On recovery, TableStateManager marks missing table state as ENABLED. Later, when regions are added and crash is simulated, on recovery, AM starts assigning these new regions which is wrong since the truncate opertation isn't complete. Table state should remain DISABLED to prevent AM recovery from interfering. --- .../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.java | 1 - 1 file changed, 1 deletion(-) diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.java index 79b2271227..9495d5da22 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.java @@ -99,7 +99,6 @@ public class TruncateTableProcedure tableDescriptor = env.getMasterServices().getTableDescriptors() .get(tableName); DeleteTableProcedure.deleteFromMeta(env, getTableName(), regions); - DeleteTableProcedure.deleteAssignmentState(env, getTableName()); setNextState(TruncateTableState.TRUNCATE_TABLE_CLEAR_FS_LAYOUT); break; case TRUNCATE_TABLE_CLEAR_FS_LAYOUT: -- 2.14.1