Copilot commented on code in PR #59599:
URL: https://github.com/apache/doris/pull/59599#discussion_r2791911969
##########
regression-test/suites/cloud_p0/different_serialize/different_serialize.groovy:
##########
@@ -46,36 +46,22 @@ suite ("different_serialize_cloud") {
sql "insert into d_table select -4,4,-4,'d';"
sql "insert into d_table(k4,k2) values('d',4);"
+ sql "insert into d_table(k4,k2) values('d',3);"
+ sql "insert into d_table(k4,k2) values('b',3);"
- qt_select_star "select * from d_table order by k1;"
+ qt_select_star "select * from d_table order by 1,2,3,4;"
- explain {
- sql("select k1,bitmap_to_string(bitmap_agg(k2)) from d_table group by
k1 order by 1;")
- contains "(mv1)"
- }
+ mv_rewrite_success("select k1,bitmap_to_string(bitmap_agg(k2)) from
d_table group by k1 order by 1;", "mv1")
qt_select_mv "select k1,bitmap_to_string(bitmap_agg(k2)) from d_table
group by k1 order by 1;"
- explain {
- sql("select k1,bitmap_to_string(bitmap_intersect(to_bitmap(k2))) from
d_table group by k1 order by 1;")
- contains "(mv1_1)"
- }
+ mv_rewrite_success("select
k1,bitmap_to_string(bitmap_intersect(to_bitmap(k2))) from d_table group by k1
order by 1;", "mv1_1")
qt_select_mv "select k1,bitmap_to_string(bitmap_intersect(to_bitmap(k2)))
from d_table group by k1 order by 1;"
explain {
- sql("select
k1,array_sort(map_keys(map_agg(k2,k3))),array_sortby(map_values(map_agg(k2,k3)),map_keys(map_agg(k2,k3)))
from d_table group by k1 order by 1;")
+ sql("select k1,map_agg(k2,k3) from d_table group by k1 order by 1;")
contains "(mv2)"
}
qt_select_mv "select
k1,array_sort(map_keys(map_agg(k2,k3))),array_sortby(map_values(map_agg(k2,k3)),map_keys(map_agg(k2,k3)))
from d_table group by k1 order by 1;"
Review Comment:
The `explain` check for `mv2` is now run against `select k1, map_agg(k2,k3)
...`, but the actual query being validated (`qt_select_mv` right after) is
`map_keys/map_values` with sorting. This weakens the test because it no longer
verifies that the *executed* query is rewritten using `mv2`. Consider updating
the `explain`/`mv_rewrite_success` assertion to use the same SQL as the
`qt_select_mv` statement (or change the `qt_select_mv` SQL to match what you
want to validate).
##########
regression-test/suites/cloud_p0/different_serialize/different_serialize.groovy:
##########
@@ -93,4 +79,17 @@ suite ("different_serialize_cloud") {
contains "(mv5)"
}
qt_select_mv "select k1,collect_set(k2,3) from d_table group by k1 order
by 1;"
+
+ sql "insert into d_table select 1,1,1,'a';"
+ sql "insert into d_table select 1,2,1,'a';"
+
+ mv_rewrite_success("select k1,bitmap_count(bitmap_agg(k2)) from d_table
group by k1 order by 1;", "mv1")
+ qt_select_mv "select k1,bitmap_count(bitmap_agg(k2)) from d_table group by
k1 order by 1;"
+
+ mv_rewrite_success("select k1, multi_distinct_sum(k3) from d_table group
by k1 order by k1;", "mv1_3")
+ qt_select_mv "select k1, multi_distinct_sum(k3) from d_table group by k1
order by k1;"
+
+ mv_rewrite_success("select k1, multi_distinct_group_concat(k4) from
d_table group by k1 order by k1;", "mv1_2")
+ qt_select_mv "select k1, multi_distinct_group_concat(k4) from d_table
group by k1 order by k1;"
Review Comment:
`mv_rewrite_success` is asserting rewrite to `mv1_3` and `mv1_2`, but this
suite never creates those materialized views (only `mv1`, `mv1_1`, `mv2`-`mv5`
are created above). This will make the test fail or become dependent on
leftover state. Add the missing `createMV` statements (or change the rewrite
assertions to target an MV that actually exists in this suite).
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]