This is an automated email from the ASF dual-hosted git repository.

yiguolei pushed a commit to branch branch-2.1
in repository https://gitbox.apache.org/repos/asf/doris.git

commit 413d733255798b9775bbb128066f606ffc16a55e
Author: Pxl <[email protected]>
AuthorDate: Thu Feb 29 10:48:23 2024 +0800

    [Bug](materialized-view) fix npe on create mv with star (#31554)
    
    fix npe on create mv with star
---
 .../java/org/apache/doris/analysis/CreateMaterializedViewStmt.java | 7 +++----
 regression-test/suites/mv_p0/test_mv_useless/const_invalid.groovy  | 5 +++++
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateMaterializedViewStmt.java
 
b/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateMaterializedViewStmt.java
index b9840438ec0..5686877a751 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateMaterializedViewStmt.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateMaterializedViewStmt.java
@@ -186,6 +186,9 @@ public class CreateMaterializedViewStmt extends DdlStmt {
         }
         SelectList selectList = selectStmt.getSelectList();
         for (SelectListItem selectListItem : selectList.getItems()) {
+            if (selectListItem.isStar()) {
+                throw new AnalysisException("The materialized view not support 
select star");
+            }
             checkExprValidInMv(selectListItem.getExpr());
         }
     }
@@ -266,10 +269,6 @@ public class CreateMaterializedViewStmt extends DdlStmt {
         for (int i = 0; i < selectList.getItems().size(); i++) {
             SelectListItem selectListItem = selectList.getItems().get(i);
 
-            if (selectListItem.isStar()) {
-                throw new AnalysisException("The materialized view not support 
select star");
-            }
-
             Expr selectListItemExpr = selectListItem.getExpr();
             if (!(selectListItemExpr instanceof SlotRef) && 
!(selectListItemExpr instanceof FunctionCallExpr)
                     && !(selectListItemExpr instanceof ArithmeticExpr)) {
diff --git a/regression-test/suites/mv_p0/test_mv_useless/const_invalid.groovy 
b/regression-test/suites/mv_p0/test_mv_useless/const_invalid.groovy
index 7d6f0d5cae1..1c6e6822f8d 100644
--- a/regression-test/suites/mv_p0/test_mv_useless/const_invalid.groovy
+++ b/regression-test/suites/mv_p0/test_mv_useless/const_invalid.groovy
@@ -43,4 +43,9 @@ suite ("const_invalid") {
         sql "create materialized view const_3 as select k1,abs(1+1) from 
d_table;"
         exception "errCode = 2,"
     }
+
+    test {
+        sql "create materialized view mvstar as select * from d_table;"
+        exception "errCode = 2,"
+    }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to