Skip to content

Conversation

@JoverZhang
Copy link
Contributor

What problem does this PR solve?

Issue Number: close #38977

Problem Summary:

This PR migrates regr_sxx/syy/sxy onto the shared Moment(AggregateFunctionRegrData) introduced in #55940.

The original implementation and tests were done in #39187 by @wyxxxcat.
This PR builds on top of that work, refactoring it to reuse the same state and merge logic.

Release note

None

Check List (For Author)

  • Test

    • Regression test
    • Unit Test
    • Manual test (add detailed scripts or steps below)
    • No need to test or manual test. Explain why:
      • This is a refactor/code format and no logic has been changed.
      • Previous test can cover this change.
      • No code files have been changed.
      • Other reason
  • Behavior changed:

    • No.
    • Yes.
  • Does this need documentation?

    • No.
    • Yes.

Check List (For Reviewer who merge this PR)

  • Confirm the release note
  • Confirm test cases
  • Confirm document
  • Add branch pick label

@Thearas
Copy link
Contributor

Thearas commented Dec 22, 2025

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.

Please clearly describe your PR:

  1. What problem was fixed (it's best to include specific error reporting information). How it was fixed.
  2. Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
  3. What features were added. Why was this function added?
  4. Which code was refactored and why was this part of the code refactored?
  5. Which functions were optimized and what is the difference before and after the optimization?

@JoverZhang
Copy link
Contributor Author

run buildall

@doris-robot
Copy link

TPC-H: Total hot run time: 36351 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools
Tpch sf100 test result on commit f21fdeacd6bc859626a2026f03931158703cdc11, data reload: false

------ Round 1 ----------------------------------
q1	17731	4225	4081	4081
q2	2187	344	239	239
q3	10465	1315	740	740
q4	10301	892	313	313
q5	7512	2095	2007	2007
q6	182	167	135	135
q7	1032	863	720	720
q8	9360	1365	1159	1159
q9	6932	5293	5320	5293
q10	7019	2392	1955	1955
q11	624	330	287	287
q12	693	728	583	583
q13	17986	3671	3013	3013
q14	292	294	287	287
q15	589	516	512	512
q16	686	682	617	617
q17	695	795	582	582
q18	7460	7886	7688	7688
q19	1277	975	628	628
q20	402	373	246	246
q21	4480	4232	4238	4232
q22	1109	1078	1034	1034
Total cold run time: 109014 ms
Total hot run time: 36351 ms

----- Round 2, with runtime_filter_mode=off -----
q1	4426	4278	4251	4251
q2	335	395	330	330
q3	2313	2809	2328	2328
q4	1365	1803	1313	1313
q5	4515	4388	4507	4388
q6	223	178	135	135
q7	2108	1882	1770	1770
q8	2627	2536	2535	2535
q9	7581	7602	7409	7409
q10	3050	3248	2844	2844
q11	579	502	491	491
q12	623	703	549	549
q13	3396	3741	3137	3137
q14	272	288	260	260
q15	540	508	503	503
q16	627	674	615	615
q17	1144	1449	1396	1396
q18	7507	7337	7280	7280
q19	843	835	835	835
q20	1925	2017	1836	1836
q21	4768	4378	4250	4250
q22	1103	1024	997	997
Total cold run time: 51870 ms
Total hot run time: 49452 ms

@JoverZhang
Copy link
Contributor Author

run buildall

@JoverZhang
Copy link
Contributor Author

run buildall

@doris-robot
Copy link

TPC-H: Total hot run time: 36185 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools
Tpch sf100 test result on commit 17b69447d5237059df1d4df68faa2e2c44bde954, data reload: false

------ Round 1 ----------------------------------
q1	17607	4249	4085	4085
q2	2044	348	235	235
q3	10181	1328	731	731
q4	10221	872	311	311
q5	7532	2084	1936	1936
q6	189	169	136	136
q7	994	843	701	701
q8	9345	1424	1134	1134
q9	7029	5406	5402	5402
q10	6859	2401	1971	1971
q11	535	324	293	293
q12	673	735	591	591
q13	17779	3668	3013	3013
q14	285	289	269	269
q15	590	530	525	525
q16	679	688	640	640
q17	686	774	591	591
q18	7388	7474	7891	7474
q19	1420	1015	630	630
q20	429	356	253	253
q21	4550	4266	4196	4196
q22	1131	1088	1068	1068
Total cold run time: 108146 ms
Total hot run time: 36185 ms

----- Round 2, with runtime_filter_mode=off -----
q1	4374	4331	4215	4215
q2	331	395	332	332
q3	2408	2854	2541	2541
q4	1412	2126	1409	1409
q5	4486	4473	4319	4319
q6	204	162	132	132
q7	2013	1940	1812	1812
q8	2658	2620	2563	2563
q9	7630	7530	7009	7009
q10	2881	3117	2637	2637
q11	571	496	470	470
q12	614	700	548	548
q13	3286	3643	2987	2987
q14	271	280	274	274
q15	539	502	504	502
q16	622	649	601	601
q17	1083	1371	1319	1319
q18	7449	7021	7080	7021
q19	839	802	819	802
q20	1908	1967	1794	1794
q21	4634	4239	4111	4111
q22	1084	1067	974	974
Total cold run time: 51297 ms
Total hot run time: 48372 ms

@doris-robot
Copy link

TPC-DS: Total hot run time: 178730 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpcds-tools
TPC-DS sf100 test result on commit 17b69447d5237059df1d4df68faa2e2c44bde954, data reload: false

query5	4906	602	446	446
query6	358	244	232	232
query7	4219	458	268	268
query8	309	272	241	241
query9	8772	2560	2521	2521
query10	502	381	357	357
query11	15442	15302	14602	14602
query12	177	117	114	114
query13	1274	502	410	410
query14	6322	2996	2757	2757
query14_1	2737	2648	2652	2648
query15	211	199	175	175
query16	973	477	431	431
query17	1135	727	618	618
query18	2585	440	352	352
query19	241	236	206	206
query20	122	116	111	111
query21	224	146	120	120
query22	4173	4073	4133	4073
query23	16691	16135	16123	16123
query23_1	16123	16098	16073	16073
query24	7345	1665	1212	1212
query24_1	1257	1231	1202	1202
query25	591	501	483	483
query26	1251	261	176	176
query27	2747	459	311	311
query28	4428	2135	2115	2115
query29	813	543	441	441
query30	316	243	216	216
query31	821	711	647	647
query32	79	71	65	65
query33	535	338	294	294
query34	921	897	541	541
query35	802	801	723	723
query36	869	915	824	824
query37	129	92	71	71
query38	2859	2846	2866	2846
query39	760	757	713	713
query39_1	711	713	705	705
query40	225	140	119	119
query41	70	63	61	61
query42	109	104	103	103
query43	431	440	408	408
query44	1333	742	743	742
query45	196	190	192	190
query46	877	986	616	616
query47	1704	1735	1687	1687
query48	317	333	245	245
query49	616	439	378	378
query50	658	304	223	223
query51	3795	3828	3772	3772
query52	105	110	100	100
query53	316	356	306	306
query54	303	257	245	245
query55	79	74	73	73
query56	294	305	302	302
query57	1141	1110	1079	1079
query58	279	254	253	253
query59	2445	2459	2352	2352
query60	313	316	285	285
query61	163	162	164	162
query62	733	696	630	630
query63	330	294	301	294
query64	4919	1325	1029	1029
query65	4036	3944	3971	3944
query66	1411	476	315	315
query67	15187	15030	14974	14974
query68	5530	1012	712	712
query69	500	353	313	313
query70	1056	991	978	978
query71	373	299	281	281
query72	6096	5037	5224	5037
query73	681	582	316	316
query74	8855	8903	8603	8603
query75	3212	3172	2797	2797
query76	3920	1135	746	746
query77	525	401	297	297
query78	9417	9570	8942	8942
query79	1543	888	607	607
query80	750	655	565	565
query81	517	274	237	237
query82	205	137	113	113
query83	279	264	249	249
query84	267	124	110	110
query85	918	528	475	475
query86	388	310	278	278
query87	3037	3118	2909	2909
query88	4052	2268	2261	2261
query89	459	422	391	391
query90	2202	154	148	148
query91	178	171	147	147
query92	79	71	61	61
query93	1883	914	558	558
query94	490	317	283	283
query95	572	328	354	328
query96	589	479	206	206
query97	2296	2329	2217	2217
query98	222	216	192	192
query99	1280	1294	1214	1214
Total cold run time: 259670 ms
Total hot run time: 178730 ms

@doris-robot
Copy link

ClickBench: Total hot run time: 27.82 s
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/clickbench-tools
ClickBench test result on commit 17b69447d5237059df1d4df68faa2e2c44bde954, data reload: false

query1	0.05	0.04	0.05
query2	0.09	0.05	0.04
query3	0.25	0.09	0.08
query4	1.61	0.12	0.11
query5	0.26	0.25	0.26
query6	1.17	0.65	0.64
query7	0.03	0.03	0.02
query8	0.06	0.04	0.04
query9	0.57	0.51	0.51
query10	0.57	0.55	0.55
query11	0.16	0.11	0.11
query12	0.14	0.11	0.12
query13	0.61	0.61	0.61
query14	1.00	0.98	0.98
query15	0.80	0.80	0.81
query16	0.43	0.43	0.40
query17	1.04	1.03	0.98
query18	0.23	0.21	0.22
query19	1.88	1.84	1.79
query20	0.02	0.02	0.01
query21	15.45	0.31	0.15
query22	4.73	0.05	0.04
query23	15.93	0.29	0.11
query24	1.37	0.90	0.88
query25	0.12	0.06	0.08
query26	0.14	0.14	0.13
query27	0.09	0.07	0.06
query28	5.27	1.22	1.02
query29	12.58	3.91	3.20
query30	0.27	0.14	0.11
query31	2.82	0.62	0.39
query32	3.24	0.55	0.46
query33	3.02	2.97	3.01
query34	16.94	5.20	4.54
query35	4.58	4.58	4.60
query36	0.66	0.49	0.49
query37	0.10	0.06	0.07
query38	0.08	0.04	0.04
query39	0.04	0.03	0.03
query40	0.17	0.14	0.14
query41	0.08	0.04	0.03
query42	0.05	0.03	0.02
query43	0.04	0.03	0.04
Total cold run time: 98.74 s
Total hot run time: 27.82 s

@hello-stephen
Copy link
Contributor

BE UT Coverage Report

Increment line coverage 7.14% (3/42) 🎉

Increment coverage report
Complete coverage report

Category Coverage
Function Coverage 53.45% (18925/35405)
Line Coverage 39.30% (175369/446243)
Region Coverage 33.85% (135683/400887)
Branch Coverage 34.76% (58485/168242)

@hello-stephen
Copy link
Contributor

FE UT Coverage Report

Increment line coverage 4.35% (3/69) 🎉
Increment coverage report
Complete coverage report

@hello-stephen
Copy link
Contributor

BE Regression && UT Coverage Report

Increment line coverage 100.00% (42/42) 🎉

Increment coverage report
Complete coverage report

Category Coverage
Function Coverage 72.23% (24998/34607)
Line Coverage 58.96% (262360/444966)
Region Coverage 53.71% (217563/405079)
Branch Coverage 55.32% (93384/168820)

@zclllyybb zclllyybb self-assigned this Dec 22, 2025
Copy link
Contributor

@zclllyybb zclllyybb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@github-actions github-actions bot added the approved Indicates a PR has been approved by one committer. label Dec 28, 2025
@github-actions
Copy link
Contributor

PR approved by at least one committer and no changes requested.

@github-actions
Copy link
Contributor

PR approved by anyone and no changes requested.

@zclllyybb zclllyybb merged commit e74ea4b into apache:master Dec 29, 2025
26 of 28 checks passed
@JoverZhang JoverZhang deleted the regr-followup branch December 30, 2025 00:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by one committer. reviewed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Enhancement](doris-future) Support "REGR_" aggregation functions (PART IV)

7 participants