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 3422e01c5a3e791076804d9e8f3e5bb56e1e3e95 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 + regression-test/conf/regression-conf.groovy | 17 ++++++++++++----- .../data/ddl_p0/test_create_or_replace_view.out | Bin 155 -> 525 bytes .../suites/ddl_p0/test_create_or_replace_view.groovy | 18 ++++++++++++++++++ 4 files changed, 31 insertions(+), 5 deletions(-) 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/conf/regression-conf.groovy b/regression-test/conf/regression-conf.groovy index 5c98889e9dc..b0343ecee07 100644 --- a/regression-test/conf/regression-conf.groovy +++ b/regression-test/conf/regression-conf.groovy @@ -24,18 +24,18 @@ defaultDb = "regression_test" // init cmd like: select @@session.tx_read_only // at each time we connect. // add allowLoadLocalInfile so that the jdbc can execute mysql load data from client. -jdbcUrl = "jdbc:mysql://127.0.0.1:9030/?useLocalSessionState=true&allowLoadLocalInfile=true" -targetJdbcUrl = "jdbc:mysql://127.0.0.1:9030/?useLocalSessionState=true&allowLoadLocalInfile=true" +jdbcUrl = "jdbc:mysql://127.0.0.1:9235/?useLocalSessionState=true&allowLoadLocalInfile=true" +targetJdbcUrl = "jdbc:mysql://127.0.0.1:9235/?useLocalSessionState=true&allowLoadLocalInfile=true" jdbcUser = "root" jdbcPassword = "" -feSourceThriftAddress = "127.0.0.1:9020" -feTargetThriftAddress = "127.0.0.1:9020" +feSourceThriftAddress = "127.0.0.1:9225" +feTargetThriftAddress = "127.0.0.1:9225" syncerAddress = "127.0.0.1:9190" feSyncerUser = "root" feSyncerPassword = "" -feHttpAddress = "127.0.0.1:8030" +feHttpAddress = "127.0.0.1:8235" feHttpUser = "root" feHttpPassword = "" @@ -197,6 +197,13 @@ extPgPort = 5432 extPgUser = "****" extPgPassword = "***********" +// elasticsearch external test config for bigdata +enableExternalEsTest = false +extEsHost = "***********" +extEsPort = 9200 +extEsUser = "*******" +extEsPassword = "***********" + enableExternalHudiTest = false hudiEmrCatalog = "***********" 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]
