diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/Catalog.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/Catalog.java index b1a252dce0..2c87f005df 100755 --- a/fe/fe-core/src/main/java/org/apache/doris/catalog/Catalog.java +++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/Catalog.java @@ -4437,6 +4437,14 @@ public class Catalog { DropInfo info = new DropInfo(db.getId(), table.getId(), -1L, stmt.isForceDrop()); table.writeLock(); try { + if (table instanceof OlapTable && !stmt.isForceDrop()) { + OlapTable olapTable = (OlapTable) table; + if ((olapTable.getState() != OlapTableState.NORMAL)) { + throw new DdlException("The table [" + tableName +"]'s state is " + olapTable.getState() + ", cannot be dropped." + + " please cancel the operation on olap table firstly. If you want to forcibly drop(cannot be recovered)," + + " please use \"DROP table FORCE\"."); + } + } unprotectDropTable(db, table, stmt.isForceDrop(), false); } finally { table.writeUnlock();