diff --git a/fe/fe-core/src/main/java/com/starrocks/sql/analyzer/ShowStmtAnalyzer.java b/fe/fe-core/src/main/java/com/starrocks/sql/analyzer/ShowStmtAnalyzer.java index 1cf351852ebd3..a0fe230bdc32d 100644 --- a/fe/fe-core/src/main/java/com/starrocks/sql/analyzer/ShowStmtAnalyzer.java +++ b/fe/fe-core/src/main/java/com/starrocks/sql/analyzer/ShowStmtAnalyzer.java @@ -163,6 +163,14 @@ public Void visitShowDynamicPartitionStatement(ShowDynamicPartitionStmt node, Co return null; } + @Override + public Void visitShowDynamicPartitionStatement(ShowDynamicPartitionStmt node, ConnectContext context) { + String dbName = node.getDb(); + dbName = getFullDatabaseName(dbName, context); + node.setDb(dbName); + return null; + } + @Override public Void visitShowIndexStmt(ShowIndexStmt node, ConnectContext context) { node.init(); diff --git a/fe/fe-core/src/main/java/com/starrocks/sql/ast/AstVisitor.java b/fe/fe-core/src/main/java/com/starrocks/sql/ast/AstVisitor.java index 95b2ccb75a25d..c811df7700a1f 100644 --- a/fe/fe-core/src/main/java/com/starrocks/sql/ast/AstVisitor.java +++ b/fe/fe-core/src/main/java/com/starrocks/sql/ast/AstVisitor.java @@ -75,6 +75,7 @@ import com.starrocks.analysis.ShowDataStmt; import com.starrocks.analysis.ShowDbStmt; import com.starrocks.analysis.ShowDeleteStmt; +import com.starrocks.analysis.ShowDynamicPartitionStmt; import com.starrocks.analysis.ShowIndexStmt; import com.starrocks.analysis.ShowMaterializedViewStmt; import com.starrocks.analysis.ShowPartitionsStmt; @@ -344,6 +345,10 @@ public R visitAlterDatabaseRename(AlterDatabaseRename statement, C context) { return visitStatement(statement, context); } + public R visitShowDynamicPartitionStatement(ShowDynamicPartitionStmt statement, C context) { + return visitStatement(statement, context); + } + public R visitShowDataStmt(ShowDataStmt statement, C context) { return visitShowStatement(statement, context); } diff --git a/fe/fe-core/src/main/java/com/starrocks/sql/parser/StarRocks.g4 b/fe/fe-core/src/main/java/com/starrocks/sql/parser/StarRocks.g4 index 22fffd645a3b8..aff2a931b39ea 100644 --- a/fe/fe-core/src/main/java/com/starrocks/sql/parser/StarRocks.g4 +++ b/fe/fe-core/src/main/java/com/starrocks/sql/parser/StarRocks.g4 @@ -23,6 +23,7 @@ statement | alterDatabaseRename #databaseRename | recoverDbStmt #revoverDb | showDataStmt #showData + | showDynamicPartitionStatement #showDynamicPartition // Table Statement | createTableStatement #createTable @@ -158,6 +159,11 @@ showDataStmt | SHOW DATA FROM qualifiedName ; +showDynamicPartitionStatement + : SHOW DYNAMIC PARTITION TABLES ((FROM | IN) db=qualifiedName)? + ; + + // ------------------------------------------- Table Statement --------------------------------------------------------- createTableStatement diff --git a/fe/fe-core/src/test/java/com/starrocks/analysis/ShowDynamicPartitionStmtTest.java b/fe/fe-core/src/test/java/com/starrocks/analysis/ShowDynamicPartitionStmtTest.java index 5a4fc5adf2e4a..ffb8b097cf769 100644 --- a/fe/fe-core/src/test/java/com/starrocks/analysis/ShowDynamicPartitionStmtTest.java +++ b/fe/fe-core/src/test/java/com/starrocks/analysis/ShowDynamicPartitionStmtTest.java @@ -1,6 +1,7 @@ // This file is licensed under the Elastic License 2.0. Copyright 2021-present, StarRocks Limited. package com.starrocks.analysis; +import com.starrocks.common.util.UUIDUtil; import com.starrocks.qe.ConnectContext; import com.starrocks.sql.analyzer.SemanticException; import com.starrocks.utframe.UtFrameUtils; @@ -24,6 +25,7 @@ public void tearDown() throws Exception { @Test public void testNormal() throws Exception { ctx = UtFrameUtils.createDefaultCtx(); + ctx.setCluster("default_cluster"); ctx.setDatabase("testDb"); String showSQL = "SHOW DYNAMIC PARTITION TABLES FROM testDb"; ShowDynamicPartitionStmt stmtFromSql =