This is an automated email from the ASF dual-hosted git repository. morrysnow pushed a commit to branch 2.1_51058 in repository https://gitbox.apache.org/repos/asf/doris.git
commit ce105b60d2d9a16198cc167e07460d0b3a39e5a6 Author: morrySnow <[email protected]> AuthorDate: Tue May 20 15:31:11 2025 +0800 branch-2.1: [fix](metadata) replace view will break view's metadata #51058 cherry-pick from #51058 --- .../src/main/java/org/apache/doris/catalog/Env.java | 1 + .../data/ddl_p0/test_create_or_replace_view.out | Bin 155 -> 525 bytes .../suites/ddl_p0/test_create_or_replace_view.groovy | 18 ++++++++++++++++++ 3 files changed, 19 insertions(+) diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java index 5b972b8c528..acd74f7467c 100755 --- a/fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java +++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java @@ -5444,6 +5444,7 @@ public class Env { AlterViewStmt alterViewStmt = new AlterViewStmt(stmt.getTableName(), stmt.getColWithComments(), stmt.getViewDefStmt()); alterViewStmt.setInlineViewDef(stmt.getInlineViewDef()); + alterViewStmt.setFinalColumns(stmt.getColumns()); try { alterView(alterViewStmt); } catch (UserException e) { diff --git a/regression-test/data/ddl_p0/test_create_or_replace_view.out b/regression-test/data/ddl_p0/test_create_or_replace_view.out index 9cccca77283..99b24310cb2 100644 Binary files a/regression-test/data/ddl_p0/test_create_or_replace_view.out and b/regression-test/data/ddl_p0/test_create_or_replace_view.out differ diff --git a/regression-test/suites/ddl_p0/test_create_or_replace_view.groovy b/regression-test/suites/ddl_p0/test_create_or_replace_view.groovy index bd689802119..f237427c4da 100644 --- a/regression-test/suites/ddl_p0/test_create_or_replace_view.groovy +++ b/regression-test/suites/ddl_p0/test_create_or_replace_view.groovy @@ -33,6 +33,14 @@ suite("test_create_or_replace_view") { DUPLICATE KEY(k1) DISTRIBUTED BY HASH(k1) BUCKETS 1 PROPERTIES( "replication_num" = "1"); """ + + qt_desc_view_tbl1 """ + desc test_create_or_replace_view_tbl1 + """ + qt_desc_view_tbl2 """ + desc test_create_or_replace_view_tbl2 + """ + sql """INSERT INTO test_create_or_replace_view_tbl1 VALUES(1,1,1)""" sql """INSERT INTO test_create_or_replace_view_tbl2 VALUES(2,2,2)""" sql "sync" @@ -43,6 +51,11 @@ suite("test_create_or_replace_view") { CREATE VIEW IF NOT EXISTS view_test_create_or_replace_view AS SELECT * FROM test_create_or_replace_view_tbl1; """ + + qt_desc_view_upper """ + desc view_test_create_or_replace_view + """ + qt_sql_1 """select * from view_test_create_or_replace_view""" // create or replace view in nereids @@ -51,6 +64,11 @@ suite("test_create_or_replace_view") { AS SELECT * FROM test_create_or_replace_view_tbl2; """ qt_sql_2 """select * from view_test_create_or_replace_view""" + + qt_desc_view_upper_after_replace """ + desc view_test_create_or_replace_view + """ + test { sql """ CREATE OR REPLACE VIEW IF NOT EXISTS view_test_create_or_replace_view --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
