Skip to content

Conversation

@Mryange
Copy link
Contributor

@Mryange Mryange commented Jan 9, 2026

What problem does this PR solve?

For example, types like Decimal and DateTime-related types must be guaranteed to be trivial — e.g. using is_trivial_v or is_trivially_destructible_v / is_trivially_copyable_v. That way they can be stored in PODArray, since PODArray copies elements with memcpy.

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 Jan 9, 2026

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?

@Mryange
Copy link
Contributor Author

Mryange commented Jan 9, 2026

run buildall

@doris-robot
Copy link

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

------ Round 1 ----------------------------------
q1	17671	4295	4079	4079
q2	2033	362	245	245
q3	10161	1304	740	740
q4	10230	925	347	347
q5	7970	2160	1862	1862
q6	214	176	149	149
q7	947	815	667	667
q8	9295	1493	1148	1148
q9	4952	4598	4666	4598
q10	6817	1843	1422	1422
q11	508	290	284	284
q12	739	751	591	591
q13	17783	3911	3160	3160
q14	287	313	276	276
q15	611	508	504	504
q16	699	687	649	649
q17	678	810	559	559
q18	6662	6645	6372	6372
q19	1111	971	628	628
q20	394	369	244	244
q21	3121	2596	2402	2402
q22	1049	993	968	968
Total cold run time: 103932 ms
Total hot run time: 31894 ms

----- Round 2, with runtime_filter_mode=off -----
q1	4096	4061	4037	4037
q2	346	399	325	325
q3	2122	2661	2220	2220
q4	1370	1830	1331	1331
q5	4073	3976	4008	3976
q6	211	171	134	134
q7	1891	1837	2145	1837
q8	2618	2485	2449	2449
q9	7272	7151	7076	7076
q10	2590	2789	2280	2280
q11	540	465	458	458
q12	767	796	624	624
q13	3720	4183	3480	3480
q14	441	350	271	271
q15	541	503	509	503
q16	643	683	617	617
q17	1201	1472	1355	1355
q18	8026	7943	7705	7705
q19	905	940	857	857
q20	2016	2029	1994	1994
q21	5005	4646	4287	4287
q22	1117	1040	993	993
Total cold run time: 51511 ms
Total hot run time: 48809 ms

@doris-robot
Copy link

TPC-DS: Total hot run time: 172720 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 f60b9c78e4c59d3a257195b9cd03bef9622bc863, data reload: false

query5	4634	573	448	448
query6	332	232	223	223
query7	4217	456	262	262
query8	335	242	226	226
query9	8740	2604	2664	2604
query10	521	365	322	322
query11	15426	15184	14977	14977
query12	176	117	118	117
query13	1259	475	366	366
query14	6257	3045	2806	2806
query14_1	2767	2657	2686	2657
query15	207	194	176	176
query16	994	485	457	457
query17	1122	644	558	558
query18	2561	425	324	324
query19	226	217	197	197
query20	125	118	120	118
query21	216	138	125	125
query22	4078	3908	3883	3883
query23	15990	15632	15298	15298
query23_1	15267	15306	15429	15306
query24	7568	1539	1200	1200
query24_1	1211	1189	1196	1189
query25	524	450	387	387
query26	1242	261	156	156
query27	2793	451	287	287
query28	4576	2129	2104	2104
query29	767	531	437	437
query30	306	230	213	213
query31	800	632	551	551
query32	77	71	65	65
query33	536	338	292	292
query34	904	873	527	527
query35	739	780	687	687
query36	843	901	854	854
query37	124	90	80	80
query38	2746	2679	2679	2679
query39	780	755	748	748
query39_1	687	698	733	698
query40	219	131	116	116
query41	66	62	61	61
query42	107	104	109	104
query43	433	465	402	402
query44	1309	724	716	716
query45	187	184	178	178
query46	843	951	583	583
query47	1341	1446	1401	1401
query48	314	325	235	235
query49	611	411	329	329
query50	635	281	199	199
query51	3772	3847	3716	3716
query52	109	113	102	102
query53	292	323	280	280
query54	305	258	249	249
query55	80	78	73	73
query56	302	305	302	302
query57	1034	996	933	933
query58	263	254	242	242
query59	1988	2215	2001	2001
query60	342	316	301	301
query61	199	191	184	184
query62	423	388	330	330
query63	310	269	276	269
query64	5014	1452	1134	1134
query65	3842	3769	3787	3769
query66	1418	415	315	315
query67	15589	14881	15257	14881
query68	4862	1009	705	705
query69	502	354	313	313
query70	1022	933	927	927
query71	360	303	284	284
query72	6078	3437	3544	3437
query73	775	724	303	303
query74	8782	8800	8560	8560
query75	2824	2804	2505	2505
query76	3470	1081	648	648
query77	530	367	275	275
query78	9765	9910	9202	9202
query79	1092	900	582	582
query80	659	579	501	501
query81	511	260	235	235
query82	407	147	113	113
query83	262	255	247	247
query84	262	117	95	95
query85	898	506	453	453
query86	351	333	294	294
query87	2983	2891	2747	2747
query88	3184	2232	2225	2225
query89	390	357	344	344
query90	1963	162	148	148
query91	173	161	141	141
query92	68	65	60	60
query93	1094	904	530	530
query94	583	330	302	302
query95	577	317	366	317
query96	594	473	212	212
query97	2350	2363	2291	2291
query98	204	198	206	198
query99	607	607	490	490
Total cold run time: 251200 ms
Total hot run time: 172720 ms

@doris-robot
Copy link

BE UT Coverage Report

Increment line coverage 100.00% (2/2) 🎉

Increment coverage report
Complete coverage report

Category Coverage
Function Coverage 53.02% (18974/35789)
Line Coverage 39.07% (175786/449875)
Region Coverage 33.66% (136151/404532)
Branch Coverage 34.68% (58845/169684)

@Mryange
Copy link
Contributor Author

Mryange commented Jan 11, 2026

run external

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 Jan 12, 2026
@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.

@hello-stephen
Copy link
Contributor

skip check_coverage

@Gabriel39 Gabriel39 merged commit 91354dd into apache:master Jan 13, 2026
30 of 31 checks passed
github-actions bot pushed a commit that referenced this pull request Jan 13, 2026
…rivially copyable. (#59736)

For example, types like Decimal and DateTime-related types must be
guaranteed to be trivial — e.g. using is_trivial_v or
is_trivially_destructible_v / is_trivially_copyable_v. That way they can
be stored in PODArray, since PODArray copies elements with memcpy.
yiguolei pushed a commit that referenced this pull request Jan 13, 2026
… Doris are trivially copyable. #59736 (#59805)

Cherry-picked from #59736

Co-authored-by: Mryange <[email protected]>
zzzxl1993 pushed a commit to zzzxl1993/doris that referenced this pull request Jan 13, 2026
…rivially copyable. (apache#59736)

For example, types like Decimal and DateTime-related types must be
guaranteed to be trivial — e.g. using is_trivial_v or
is_trivially_destructible_v / is_trivially_copyable_v. That way they can
be stored in PODArray, since PODArray copies elements with memcpy.
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. dev/4.0.3-merged reviewed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants