Skip to content

[BugFix] optimize constant value cte&subquery (backport #60814) #38579

[BugFix] optimize constant value cte&subquery (backport #60814)

[BugFix] optimize constant value cte&subquery (backport #60814) #38579

Triggered via pull request December 26, 2025 08:12
Status Failure
Total duration 34m 46s
Artifacts 3

ci-pipeline-branch.yml

on: pull_request
BE FILTER
3s
BE FILTER
FE FILTER
4s
FE FILTER
Clang-Format
0s
Clang-Format
FE Code Style Check
2m 5s
FE Code Style Check
Matrix: Thirdparty Update
Thirdparty Info
0s
Thirdparty Info
Fit to window
Zoom out
Zoom in

Annotations

3 errors
FE UT
Process completed with exit code 1.
FE UT
RUN UT FAIL!!!
SchedulerTPCHTest.testTPCH(String, String, String)[15]: fe/fe-core/src/test/java/com/starrocks/qe/scheduler/plan/SchedulerTPCHTest.java#L55
-1 plan select s_suppkey, s_name, s_address, s_phone, total_revenue from supplier, ( select l_suppkey as supplier_no, sum(l_extendedprice * (1 - l_discount)) as total_revenue from lineitem where l_shipdate >= date '1995-07-01' and l_shipdate < date '1995-10-01' group by l_suppkey) a where s_suppkey = supplier_no and total_revenue = ( select max(total_revenue) from ( select l_suppkey as supplier_no, sum(l_extendedprice * (1 - l_discount)) as total_revenue from lineitem where l_shipdate >= date '1995-07-01' and l_shipdate < date '1995-10-01' group by l_suppkey) b ) order by s_suppkey; expected: <PLAN FRAGMENT 0 OUTPUT EXPRS:1: s_suppkey | 2: s_name | 3: s_address | 5: s_phone | 26: sum PARTITION: UNPARTITIONED RESULT SINK 24:MERGING-EXCHANGE PLAN FRAGMENT 1 OUTPUT EXPRS: PARTITION: RANDOM STREAM DATA SINK EXCHANGE ID: 24 UNPARTITIONED 23:SORT | order by: <slot 1> 1: s_suppkey ASC | offset: 0 | 22:Project | <slot 1> : 1: s_suppkey | <slot 2> : 2: s_name | <slot 3> : 3: s_address | <slot 5> : 5: s_phone | <slot 26> : 26: sum | 21:HASH JOIN | join op: INNER JOIN (BUCKET_SHUFFLE) | colocate: false, reason: | equal join conjunct: 1: s_suppkey = 10: L_SUPPKEY | |----20:EXCHANGE | 0:OlapScanNode TABLE: supplier PREAGGREGATION: ON partitions=1/1 rollup: supplier tabletRatio=12/12 cardinality=1 avgRowSize=84.0 PLAN FRAGMENT 2 OUTPUT EXPRS: PARTITION: HASH_PARTITIONED: 10: L_SUPPKEY STREAM DATA SINK EXCHANGE ID: 20 BUCKET_SHUFFLE_HASH_PARTITIONED: 10: L_SUPPKEY 19:Project | <slot 10> : 10: L_SUPPKEY | <slot 26> : 26: sum | 18:HASH JOIN | join op: INNER JOIN (BROADCAST) | colocate: false, reason: | equal join conjunct: 26: sum = 46: max | |----17:EXCHANGE | 5:AGGREGATE (merge finalize) | output: sum(26: sum) | group by: 10: L_SUPPKEY | having: 26: sum IS NOT NULL | 4:EXCHANGE PLAN FRAGMENT 3 OUTPUT EXPRS: PARTITION: UNPARTITIONED STREAM DATA SINK EXCHANGE ID: 17 UNPARTITIONED 16:SELECT | predicates: 46: max IS NOT NULL | 15:ASSERT NUMBER OF ROWS | assert number of rows: LE 1 | 14:AGGREGATE (merge finalize) | output: max(46: max) | group by: | 13:EXCHANGE PLAN FRAGMENT 4 OUTPUT EXPRS: PARTITION: HASH_PARTITIONED: 29: L_SUPPKEY STREAM DATA SINK EXCHANGE ID: 13 UNPARTITIONED 12:AGGREGATE (update serialize) | output: max(45: sum) | group by: | 11:Project | <slot 45> : 45: sum | 10:AGGREGATE (merge finalize) | output: sum(45: sum) | group by: 29: L_SUPPKEY | 9:EXCHANGE PLAN FRAGMENT 5 OUTPUT EXPRS: PARTITION: RANDOM STREAM DATA SINK EXCHANGE ID: 09 HASH_PARTITIONED: 29: L_SUPPKEY 8:AGGREGATE (update serialize) | STREAMING | output: sum(44: expr) | group by: 29: L_SUPPKEY | 7:Project | <slot 29> : 29: L_SUPPKEY | <slot 44> : 32: L_EXTENDEDPRICE * 1.0 - 33: L_DISCOUNT | 6:OlapScanNode TABLE: lineitem PREAGGREGATION: ON PREDICATES: 37: L_SHIPDATE >= '1995-07-01', 37: L_SHIPDATE < '1995-10-01' partitions=1/1 rollup: lineitem tabletRatio=20/20 cardinality=1 avgRowSize=32.0 PLAN FRAGMENT 6 OUTPUT EXPRS: PARTITION: RANDOM STREAM DATA SINK EXCHANGE ID: 04 HASH_PARTITIONED: 10: L_SUPPKEY 3:AGGREGATE (update serialize) | STREAMING | output: sum(25: expr) | group by: 10: L_SUPPKEY | 2:Project | <slot 10> : 10: L_SUPPKEY | <slot 25> : 13: L_EXTENDEDPRICE * 1.0 - 14: L_DISCOUNT | 1:OlapScanNode TABLE: lineitem PREAGGREGATION: ON PREDICATES: 18: L_SHIPDATE >= '1995-07-01', 18: L_SHIPDATE < '1995-10-01' partitions=1/1 rollup: lineitem tabletRatio=20/20 cardinality=1 avgRowSize=32.0> but was: <PLAN FRAGMENT 0 OUTPUT EXPRS:1: s_suppkey | 2: s_name | 3: s_address | 5: s_phone | 26: sum PARTITION: UNPARTITIONED RESULT SINK 22:MERGING-EXCHANGE PLAN FRAGMENT 1 OUTPUT EXPRS: PARTITION: RANDOM STREAM DATA SINK EXCHANGE ID: 22 UNPARTITIONED 21:SORT | order by: <slot 1> 1: s_suppkey ASC | offset: 0 | 20:Project | <slot 1> : 1: s_suppkey | <slot 2> : 2: s_name | <slot 3> : 3: s_address | <slot 5> : 5: s_phone | <slot 26> : 26: sum | 19:HASH JOIN | join op: INNER JOIN (BUCKET_SHUFFLE) | colocate: false, reason: | equal join conjunct: 1: s_suppkey = 10: L_SUPPKEY | |----18:EXCHANGE | 0:OlapScanNode TABLE: supplier PREAGGREGATION: ON partitions=1/1 rollup: supplier tabletRatio=12/12 cardinality=1 avgRowSize=84.0 PLAN FRAGMENT 2 OUTPUT EXPRS: PARTITION: HASH_PARTITIONED: 10: L_SUPPKEY STREAM DATA SINK EXCHANGE ID: 18 BUCKET_SHUFFLE_HASH_PARTITIONED: 10: L_SUPPKEY 17:Project | <slot 10> : 10: L_SUPPKEY | <slot 26> : 26: sum | 16:HASH JOIN | join op: INNER JOIN (BROADCAST) | colocate: false, reason: | equal join conjunct: 26: sum = 46: max | |----15:EXCHANGE | 5:AGGREGATE (merge finalize) | output: sum(26: sum) | group by: 10: L_SUPPKEY | having: 26: sum IS NOT NULL | 4:EXCHANGE PLAN FRAGMENT 3 OUTPUT EXPRS: PARTITION: UNPARTITIONED STREAM DATA SINK EXCHANGE ID: 15 UNPARTITIONED 14:AGGREGATE (merge finalize) | output: max(46: max) | group by: | having: 46: max IS NOT NULL | 13:EXCHANGE PLAN FRAGMENT 4 OUTPUT EXPRS: PARTITION: HASH_PARTITIONED: 29: L_SUPPKEY STREAM DATA SINK EXCHANGE ID: 13 UNPARTITIONED 12:AGGREGATE (update serialize) | output: max(45: sum) | group by: | 11:Project | <slot 45> : 45: sum | 10:AGGREGATE (merge finalize) | output: sum(45: sum) | group by: 29: L_SUPPKEY | 9:EXCHANGE PLAN FRAGMENT 5 OUTPUT EXPRS: PARTITION: RANDOM STREAM DATA SINK EXCHANGE ID: 09 HASH_PARTITIONED: 29: L_SUPPKEY 8:AGGREGATE (update serialize) | STREAMING | output: sum(44: expr) | group by: 29: L_SUPPKEY | 7:Project | <slot 29> : 29: L_SUPPKEY | <slot 44> : 32: L_EXTENDEDPRICE * 1.0 - 33: L_DISCOUNT | 6:OlapScanNode TABLE: lineitem PREAGGREGATION: ON PREDICATES: 37: L_SHIPDATE >= '1995-07-01', 37: L_SHIPDATE < '1995-10-01' partitions=1/1 rollup: lineitem tabletRatio=20/20 cardinality=1 avgRowSize=32.0 PLAN FRAGMENT 6 OUTPUT EXPRS: PARTITION: RANDOM STREAM DATA SINK EXCHANGE ID: 04 HASH_PARTITIONED: 10: L_SUPPKEY 3:AGGREGATE (update serialize) | STREAMING | output: sum(25: expr) | group by: 10: L_SUPPKEY | 2:Project | <slot 10> : 10: L_SUPPKEY | <slot 25> : 13: L_EXTENDEDPRICE * 1.0 - 14: L_DISCOUNT | 1:OlapScanNode TABLE: lineitem PREAGGREGATION: ON PREDICATES: 18: L_SHIPDATE >= '1995-07-01', 18: L_SHIPDATE < '1995-10-01' partitions=1/1 rollup: lineitem tabletRatio=20/20 cardinality=1 avgRowSize=32.0>

Artifacts

Produced during runtime
Name Size Digest
FE UT LOG Expired
1.25 MB
sha256:7c0d150bcde2a36492db1b7c60e1167074c2950182bf49ed6627e00a64d3e1a3
head_sha
179 Bytes
sha256:72165b5e2346dfaa90d5ccd2982c53c16fa704b328e280f489e4a9e2c1eb5562
pr_num
142 Bytes
sha256:6fe1e43610e092201fb86d885437c6da1e33e750b4fa128730214f6ca4d4f0ca