diff --git a/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/impl/parser/SqlDropObject.java b/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/impl/parser/SqlDropObject.java index 1efcb373f1f8..1472ff48fe79 100644 --- a/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/impl/parser/SqlDropObject.java +++ b/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/impl/parser/SqlDropObject.java @@ -74,8 +74,10 @@ public void execute(CalcitePrepare.Context context) { case DROP_TABLE: if (schema.schema instanceof BeamCalciteSchema) { BeamCalciteSchema beamSchema = (BeamCalciteSchema) schema.schema; - beamSchema.getTableProvider().dropTable(name.getSimple()); - existed = true; + existed = beamSchema.getTableProvider().getTable(name.getSimple()) != null; + if (existed) { + beamSchema.getTableProvider().dropTable(name.getSimple()); + } } else { existed = schema.removeTable(name.getSimple()); }