This is an automated email from the ASF dual-hosted git repository.
hello-stephen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 9502e5757cd [fix](regression) stabilize multi leading scalar predicate
(#65045)
9502e5757cd is described below
commit 9502e5757cd83cb09a3d264e5b4670b54d980e38
Author: shuke <[email protected]>
AuthorDate: Wed Jul 1 15:10:30 2026 +0800
[fix](regression) stabilize multi leading scalar predicate (#65045)
## Summary
- avoid commutative multiplication rendering drift in `multi_leading`
scalar subquery shape output
- rewrite the scalar predicate from `0.05 * avg(t1.c11)` to `avg(t1.c11)
/ 20.0`
- update the expected shape text for `sql5_2`
## Testing
- [x] `git diff --cached --check`
- [ ] not run locally: requires an available Doris regression
environment
---
regression-test/data/query_p0/hint/multi_leading.out | 2 +-
regression-test/suites/query_p0/hint/multi_leading.groovy | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/regression-test/data/query_p0/hint/multi_leading.out
b/regression-test/data/query_p0/hint/multi_leading.out
index 89e22b45247..e1446884fe2 100644
--- a/regression-test/data/query_p0/hint/multi_leading.out
+++ b/regression-test/data/query_p0/hint/multi_leading.out
@@ -302,7 +302,7 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
----PhysicalOlapScan[t1]
--PhysicalResultSink
----PhysicalDistribute[DistributionSpecGather]
-------NestedLoopJoin[INNER_JOIN](cast(sum(c11) as DOUBLE) > 0.05 * avg(t1.c11))
+------NestedLoopJoin[INNER_JOIN](cast(sum(c11) as DOUBLE) > avg(t1.c11) / 20.0)
--------hashAgg[GLOBAL]
----------PhysicalDistribute[DistributionSpecHash]
------------PhysicalCteConsumer ( cteId=CTEId#0 )
diff --git a/regression-test/suites/query_p0/hint/multi_leading.groovy
b/regression-test/suites/query_p0/hint/multi_leading.groovy
index 6cfec37b121..c9aa14cd0f2 100644
--- a/regression-test/suites/query_p0/hint/multi_leading.groovy
+++ b/regression-test/suites/query_p0/hint/multi_leading.groovy
@@ -138,5 +138,5 @@ suite("multi_leading") {
qt_sql4_res_7 """select /*+ leading(t3 alias1) */ count(*) from (select
/*+ leading(alias2 t1) */ c1, c11 from t1 join (select /*+ leading(t4 t2) */
c2, c22 from t2 join t4 on c2 = c4) as alias2 on c1 = alias2.c2) as alias1 join
t3 on alias1.c1 = t3.c3;"""
// // use cte in scalar query
- qt_sql5_2 """explain shape plan with cte as (select c11, c1 from t1)
SELECT c1 FROM cte group by c1 having sum(cte.c11) > (select /*+ leading(cte
t1) */ 0.05 * avg(t1.c11) from t1 join cte on t1.c1 = cte.c11 )"""
+ qt_sql5_2 """explain shape plan with cte as (select c11, c1 from t1)
SELECT c1 FROM cte group by c1 having sum(cte.c11) > (select /*+ leading(cte
t1) */ avg(t1.c11) / 20.0 from t1 join cte on t1.c1 = cte.c11 )"""
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]