morrySnow commented on code in PR #35236: URL: https://github.com/apache/doris/pull/35236#discussion_r1613197878
########## regression-test/suites/nereids_rules_p0/mv/partition_mv_rewrite.groovy: ########## @@ -158,37 +160,296 @@ suite("partition_mv_rewrite") { sql("${partition_sql}") contains("${mv_name}(${mv_name})") } - // partition is invalid, so can not use partition 2023-10-17 to rewrite + // base table partition data change sql """ - insert into lineitem values + insert into lineitem values (1, 2, 3, 4, 5.5, 6.5, 7.5, 8.5, 'o', 'k', '2023-10-17', '2023-10-17', '2023-10-17', 'a', 'b', 'yyyyyyyyy'); """ - // wait partition is invalid sleep(5000) - // only can use valid partition + + sql "SET enable_materialized_view_union_rewrite=false;" + sql "SET enable_materialized_view_rewrite=false" + order_qt_query_1_0_before "${all_partition_sql}" + sql "SET enable_materialized_view_rewrite=true" + explain { + sql("${all_partition_sql}") + notContains("${mv_name}(${mv_name})") + } + order_qt_query_1_0_after "${all_partition_sql}" + + sql "SET enable_materialized_view_rewrite=false" + order_qt_query_2_0_before "${partition_sql}" + sql "SET enable_materialized_view_rewrite=true" + explain { + sql("${partition_sql}") + contains("${mv_name}(${mv_name})") + } + order_qt_query_2_0_after "${partition_sql}" + + // enable union rewrite + sql "SET enable_materialized_view_union_rewrite=true" + sql "SET enable_materialized_view_rewrite=false" + order_qt_query_3_0_before "${all_partition_sql}" + sql "SET enable_materialized_view_rewrite=true" + explain { + sql("${all_partition_sql}") + contains("${mv_name}(${mv_name})") + } + order_qt_query_3_0_after "${all_partition_sql}" + + sql "SET enable_materialized_view_rewrite=false" + order_qt_query_4_0_before "${partition_sql}" + sql "SET enable_materialized_view_rewrite=true" + explain { + sql("${partition_sql}") + contains("${mv_name}(${mv_name})") + } + order_qt_query_4_0_after "${partition_sql}" + + + // base table add partition + sql "REFRESH MATERIALIZED VIEW ${mv_name} AUTO" sql "SET enable_materialized_view_union_rewrite=false" - // Test query all partition when disable enable_materialized_view_union_rewrite - order_qt_query_all_direct_before "${all_partition_sql}" + waitingMTMVTaskFinished(getJobName(db, mv_name)) + sql """ + insert into lineitem values + (1, 2, 3, 4, 5.5, 6.5, 7.5, 8.5, 'o', 'k', '2023-10-21', '2023-10-21', '2023-10-21', 'a', 'b', 'yyyyyyyyy'); + """ + + sleep(5000) + sql "SET enable_materialized_view_rewrite=false" + order_qt_query_5_0_before "${all_partition_sql}" Review Comment: use meaningful case name ########## regression-test/suites/nereids_rules_p0/mv/partition_mv_rewrite.groovy: ########## @@ -158,37 +160,296 @@ suite("partition_mv_rewrite") { sql("${partition_sql}") contains("${mv_name}(${mv_name})") } - // partition is invalid, so can not use partition 2023-10-17 to rewrite + // base table partition data change sql """ - insert into lineitem values + insert into lineitem values (1, 2, 3, 4, 5.5, 6.5, 7.5, 8.5, 'o', 'k', '2023-10-17', '2023-10-17', '2023-10-17', 'a', 'b', 'yyyyyyyyy'); """ - // wait partition is invalid sleep(5000) - // only can use valid partition + + sql "SET enable_materialized_view_union_rewrite=false;" + sql "SET enable_materialized_view_rewrite=false" + order_qt_query_1_0_before "${all_partition_sql}" + sql "SET enable_materialized_view_rewrite=true" + explain { + sql("${all_partition_sql}") + notContains("${mv_name}(${mv_name})") + } + order_qt_query_1_0_after "${all_partition_sql}" + + sql "SET enable_materialized_view_rewrite=false" + order_qt_query_2_0_before "${partition_sql}" + sql "SET enable_materialized_view_rewrite=true" + explain { + sql("${partition_sql}") + contains("${mv_name}(${mv_name})") + } + order_qt_query_2_0_after "${partition_sql}" + + // enable union rewrite + sql "SET enable_materialized_view_union_rewrite=true" + sql "SET enable_materialized_view_rewrite=false" + order_qt_query_3_0_before "${all_partition_sql}" + sql "SET enable_materialized_view_rewrite=true" + explain { + sql("${all_partition_sql}") + contains("${mv_name}(${mv_name})") + } + order_qt_query_3_0_after "${all_partition_sql}" + + sql "SET enable_materialized_view_rewrite=false" + order_qt_query_4_0_before "${partition_sql}" + sql "SET enable_materialized_view_rewrite=true" + explain { + sql("${partition_sql}") + contains("${mv_name}(${mv_name})") + } + order_qt_query_4_0_after "${partition_sql}" + + + // base table add partition + sql "REFRESH MATERIALIZED VIEW ${mv_name} AUTO" sql "SET enable_materialized_view_union_rewrite=false" - // Test query all partition when disable enable_materialized_view_union_rewrite - order_qt_query_all_direct_before "${all_partition_sql}" + waitingMTMVTaskFinished(getJobName(db, mv_name)) + sql """ + insert into lineitem values + (1, 2, 3, 4, 5.5, 6.5, 7.5, 8.5, 'o', 'k', '2023-10-21', '2023-10-21', '2023-10-21', 'a', 'b', 'yyyyyyyyy'); + """ + + sleep(5000) Review Comment: do not use sleep, real check what u want to wait -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org