diff --git a/core/trino-main/src/main/java/io/trino/execution/DropSchemaTask.java b/core/trino-main/src/main/java/io/trino/execution/DropSchemaTask.java index b7135ff714f7..9ea081224168 100644 --- a/core/trino-main/src/main/java/io/trino/execution/DropSchemaTask.java +++ b/core/trino-main/src/main/java/io/trino/execution/DropSchemaTask.java @@ -92,19 +92,7 @@ private static boolean isSchemaEmpty(Session session, CatalogSchemaName schema, { QualifiedTablePrefix tablePrefix = new QualifiedTablePrefix(schema.getCatalogName(), schema.getSchemaName()); - // These are best efforts checks that don't provide any guarantees against concurrent DDL operations - if (!metadata.listTables(session, tablePrefix).isEmpty()) { - return false; - } - - if (!metadata.listViews(session, tablePrefix).isEmpty()) { - return false; - } - - if (!metadata.listMaterializedViews(session, tablePrefix).isEmpty()) { - return false; - } - - return true; + // This is a best effort check that doesn't provide any guarantees against concurrent DDL operations + return metadata.listTables(session, tablePrefix).isEmpty(); } } diff --git a/core/trino-main/src/main/java/io/trino/metadata/Metadata.java b/core/trino-main/src/main/java/io/trino/metadata/Metadata.java index e51db79e9fe9..bc8897f9e5e9 100644 --- a/core/trino-main/src/main/java/io/trino/metadata/Metadata.java +++ b/core/trino-main/src/main/java/io/trino/metadata/Metadata.java @@ -142,7 +142,8 @@ Optional getTableHandleForExecute( TableStatistics getTableStatistics(Session session, TableHandle tableHandle, Constraint constraint); /** - * Get the names that match the specified table prefix (never null). + * Get the relation names that match the specified table prefix (never null). + * This includes all relations (e.g. tables, views, materialized views). */ List listTables(Session session, QualifiedTablePrefix prefix);