Skip to content

[fix](decimal256) fix casting float/double to decimal256 - #54401

Merged
zclllyybb merged 2 commits into
apache:branch-3.1from
jacktengg:3.1-fix-cast-float-to-decimal256
Aug 7, 2025
Merged

[fix](decimal256) fix casting float/double to decimal256#54401
zclllyybb merged 2 commits into
apache:branch-3.1from
jacktengg:3.1-fix-cast-float-to-decimal256

Conversation

@jacktengg

@jacktenggjacktengg commented Aug 6, 2025

Copy link
Copy Markdown
Contributor

What problem does this PR solve?

This problem is already fixed on master by the refactoring PR #50940

Related PR:
3.0: #54400
2.1: #54402

Problem Summary:

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

@jacktengg

Copy link
Copy Markdown
ContributorAuthor

run buildall

@doris-robot

Copy link
Copy Markdown
TPC-H: Total hot run time: 32665 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools
Tpch sf100 test result on commit aab43b2529ecfbb6ed98ccbb8c7bb645d3b4c474, data reload: false
------ Round 1 ----------------------------------
q1	17802	5707	5546	5546
q2	2072	287	172	172
q3	10623	1271	733	733
q4	10277	885	446	446
q5	8757	2387	2142	2142
q6	183	166	136	136
q7	902	750	625	625
q8	9335	1459	1170	1170
q9	5295	5031	4870	4870
q10	6797	2289	1834	1834
q11	489	283	262	262
q12	332	350	204	204
q13	17790	3615	3012	3012
q14	235	227	213	213
q15	526	464	471	464
q16	413	422	381	381
q17	588	880	362	362
q18	7026	6477	6375	6375
q19	1377	952	544	544
q20	339	337	200	200
q21	2796	2173	1965	1965
q22	1076	1071	1009	1009
Total cold run time: 105030 ms
Total hot run time: 32665 ms
----- Round 2, with runtime_filter_mode=off -----
q1	6009	5514	5535	5514
q2	240	341	237	237
q3	2283	2628	2341	2341
q4	1354	1761	1348	1348
q5	4426	4974	4963	4963
q6	174	165	129	129
q7	2095	1998	1849	1849
q8	2639	2838	2704	2704
q9	7362	7315	7312	7312
q10	3064	3283	2707	2707
q11	588	515	507	507
q12	669	838	631	631
q13	3420	3788	3170	3170
q14	279	314	275	275
q15	527	472	457	457
q16	454	478	446	446
q17	1204	1755	1254	1254
q18	7609	7442	7365	7365
q19	802	898	1147	898
q20	2051	2097	1896	1896
q21	5382	4849	4679	4679
q22	1096	1067	997	997
Total cold run time: 53727 ms
Total hot run time: 51679 ms

@doris-robot

Copy link
Copy Markdown
TPC-DS: Total hot run time: 197711 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 aab43b2529ecfbb6ed98ccbb8c7bb645d3b4c474, data reload: false
query1	1283	960	923	923
query2	6240	1920	1874	1874
query3	11018	4386	4506	4386
query4	32899	24182	23522	23522
query5	4150	605	468	468
query6	282	196	184	184
query7	3983	494	313	313
query8	290	233	242	233
query9	9425	2596	2585	2585
query10	465	325	262	262
query11	17992	15340	15276	15276
query12	160	106	106	106
query13	1561	548	413	413
query14	9818	7227	6824	6824
query15	221	204	193	193
query16	7966	711	496	496
query17	1565	745	612	612
query18	2132	420	320	320
query19	207	200	169	169
query20	129	122	116	116
query21	207	130	111	111
query22	4652	4670	4363	4363
query23	35103	34561	34293	34293
query24	7579	2737	2744	2737
query25	526	490	444	444
query26	1196	292	182	182
query27	2273	487	358	358
query28	5221	2255	2204	2204
query29	740	610	501	501
query30	242	194	166	166
query31	1012	932	859	859
query32	86	67	59	59
query33	494	361	304	304
query34	742	869	540	540
query35	783	826	726	726
query36	973	1042	960	960
query37	105	92	72	72
query38	4041	4018	3952	3952
query39	1515	1454	1470	1454
query40	208	118	108	108
query41	53	50	47	47
query42	126	109	113	109
query43	498	533	489	489
query44	1351	829	818	818
query45	196	189	180	180
query46	897	1067	679	679
query47	2004	1995	1989	1989
query48	425	427	343	343
query49	766	498	410	410
query50	688	712	454	454
query51	7259	7398	7290	7290
query52	104	103	101	101
query53	235	255	189	189
query54	554	574	472	472
query55	81	79	81	79
query56	275	282	265	265
query57	1264	1270	1211	1211
query58	234	233	226	226
query59	3186	3145	3026	3026
query60	295	302	271	271
query61	112	123	116	116
query62	806	755	702	702
query63	236	191	201	191
query64	4424	1001	657	657
query65	3372	3282	3328	3282
query66	971	421	322	322
query67	15968	16126	15578	15578
query68	7721	825	556	556
query69	510	309	267	267
query70	1169	1090	1094	1090
query71	394	288	252	252
query72	5743	3736	3968	3736
query73	643	750	357	357
query74	10473	9352	9358	9352
query75	3184	3165	2670	2670
query76	3118	1192	783	783
query77	459	358	274	274
query78	10406	10328	9583	9583
query79	3776	916	590	590
query80	802	515	440	440
query81	521	257	222	222
query82	633	131	99	99
query83	173	161	142	142
query84	284	103	85	85
query85	782	367	298	298
query86	383	324	301	301
query87	4445	4351	4234	4234
query88	5180	2427	2417	2417
query89	423	335	301	301
query90	1761	193	194	193
query91	134	139	111	111
query92	66	60	54	54
query93	2326	884	545	545
query94	699	419	309	309
query95	344	280	274	274
query96	484	609	292	292
query97	3198	3263	3196	3196
query98	219	217	198	198
query99	1548	1442	1326	1326
Total cold run time: 297865 ms
Total hot run time: 197711 ms

@doris-robot

Copy link
Copy Markdown
ClickBench: Total hot run time: 29.31 s
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/clickbench-tools
ClickBench test result on commit aab43b2529ecfbb6ed98ccbb8c7bb645d3b4c474, data reload: false
query1	0.03	0.03	0.03
query2	0.07	0.02	0.03
query3	0.23	0.07	0.06
query4	1.62	0.10	0.11
query5	0.51	0.51	0.52
query6	1.13	0.73	0.74
query7	0.03	0.02	0.02
query8	0.05	0.02	0.04
query9	0.57	0.52	0.50
query10	0.55	0.54	0.56
query11	0.15	0.11	0.11
query12	0.14	0.11	0.11
query13	0.62	0.59	0.59
query14	0.77	0.80	0.81
query15	0.86	0.82	0.82
query16	0.37	0.37	0.39
query17	0.98	1.04	1.03
query18	0.23	0.21	0.22
query19	1.95	1.84	1.78
query20	0.01	0.01	0.01
query21	15.40	0.92	0.59
query22	0.74	0.80	0.63
query23	15.13	1.38	0.55
query24	3.27	1.25	2.25
query25	0.15	0.14	0.24
query26	0.18	0.14	0.13
query27	0.06	0.06	0.05
query28	14.50	0.93	0.43
query29	12.60	3.92	3.29
query30	0.25	0.08	0.06
query31	2.83	0.59	0.40
query32	3.22	0.54	0.47
query33	3.01	3.06	3.03
query34	16.72	5.19	4.53
query35	4.55	4.61	4.60
query36	0.67	0.50	0.49
query37	0.09	0.06	0.06
query38	0.04	0.04	0.03
query39	0.03	0.02	0.03
query40	0.16	0.13	0.13
query41	0.08	0.02	0.03
query42	0.03	0.02	0.02
query43	0.03	0.03	0.04
Total cold run time: 104.61 s
Total hot run time: 29.31 s

@doris-robot

Copy link
Copy Markdown

BE UT Coverage Report

Increment line coverage 0.00% (0/7) 🎉

Increment coverage report
Complete coverage report

CategoryCoverage
Function Coverage45.40% (12641/27842)
Line Coverage36.25% (112671/310782)
Region Coverage35.31% (58248/164980)
Branch Coverage32.49% (31670/97464)

@hello-stephen

Copy link
Copy Markdown
Contributor

BE Regression && UT Coverage Report

Increment line coverage 100.00% (7/7) 🎉

Increment coverage report
Complete coverage report

CategoryCoverage
Function Coverage76.30% (20989/27510)
Line Coverage69.69% (216436/310575)
Region Coverage67.70% (129523/191321)
Branch Coverage61.24% (67363/109994)

@jacktengg

Copy link
Copy Markdown
ContributorAuthor

run buildall

@doris-robot

Copy link
Copy Markdown
TPC-H: Total hot run time: 32614 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools
Tpch sf100 test result on commit b434ae9e01cfcd62bda13d80f4f7a64c327bfa4d, data reload: false
------ Round 1 ----------------------------------
q1	17859	5519	5538	5519
q2	2048	296	207	207
q3	10562	1233	734	734
q4	10275	860	461	461
q5	8905	2341	2163	2163
q6	187	167	136	136
q7	886	748	620	620
q8	9346	1429	1184	1184
q9	5153	4953	4833	4833
q10	6752	2275	1811	1811
q11	479	276	258	258
q12	338	351	209	209
q13	17800	3599	3007	3007
q14	227	224	208	208
q15	536	468	484	468
q16	427	443	365	365
q17	587	854	355	355
q18	6874	6426	6408	6408
q19	1446	948	513	513
q20	316	342	199	199
q21	2743	2118	1944	1944
q22	1054	1028	1012	1012
Total cold run time: 104800 ms
Total hot run time: 32614 ms
----- Round 2, with runtime_filter_mode=off -----
q1	5570	5505	5509	5505
q2	242	342	238	238
q3	2265	2641	2334	2334
q4	1382	1754	1351	1351
q5	4453	4853	4998	4853
q6	172	158	128	128
q7	2065	1977	1817	1817
q8	2567	2806	2678	2678
q9	7255	7170	7207	7170
q10	3065	3331	2759	2759
q11	566	512	510	510
q12	658	741	622	622
q13	3426	3769	3205	3205
q14	282	291	283	283
q15	521	467	472	467
q16	455	499	437	437
q17	1226	1753	1275	1275
q18	7534	7400	7321	7321
q19	751	1168	1054	1054
q20	2024	2074	1906	1906
q21	5337	5007	4710	4710
q22	1120	1079	1001	1001
Total cold run time: 52936 ms
Total hot run time: 51624 ms

@doris-robot

Copy link
Copy Markdown

BE UT Coverage Report

Increment line coverage 0.00% (0/7) 🎉

Increment coverage report
Complete coverage report

CategoryCoverage
Function Coverage45.41% (12645/27849)
Line Coverage36.27% (112720/310822)
Region Coverage35.30% (58250/164999)
Branch Coverage32.50% (31680/97472)

@doris-robot

Copy link
Copy Markdown
TPC-DS: Total hot run time: 197153 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 b434ae9e01cfcd62bda13d80f4f7a64c327bfa4d, data reload: false
query1	1317	936	915	915
query2	6229	1987	1928	1928
query3	10998	4667	4523	4523
query4	33130	24057	23464	23464
query5	3804	597	458	458
query6	250	186	186	186
query7	3981	488	313	313
query8	290	245	234	234
query9	9481	2598	2578	2578
query10	484	335	259	259
query11	18146	15469	15310	15310
query12	156	107	103	103
query13	1560	554	413	413
query14	9943	6598	7186	6598
query15	241	206	177	177
query16	7933	679	481	481
query17	1623	781	597	597
query18	2098	419	316	316
query19	205	202	166	166
query20	126	119	117	117
query21	206	137	116	116
query22	4702	4596	4459	4459
query23	35438	34317	34450	34317
query24	7448	2713	2765	2713
query25	544	504	447	447
query26	1063	291	184	184
query27	2039	499	354	354
query28	5354	2217	2168	2168
query29	739	600	481	481
query30	249	204	166	166
query31	1094	921	862	862
query32	83	68	75	68
query33	512	386	337	337
query34	748	861	521	521
query35	814	824	731	731
query36	1007	1053	956	956
query37	109	99	72	72
query38	4048	4042	4041	4041
query39	1550	1479	1454	1454
query40	204	124	105	105
query41	55	55	51	51
query42	130	114	103	103
query43	506	509	487	487
query44	1369	826	834	826
query45	186	179	179	179
query46	895	1088	693	693
query47	2000	1954	1927	1927
query48	425	451	344	344
query49	765	506	439	439
query50	700	711	439	439
query51	7360	7271	7319	7271
query52	104	103	97	97
query53	234	270	203	203
query54	553	547	478	478
query55	88	81	79	79
query56	282	280	251	251
query57	1278	1293	1225	1225
query58	251	215	233	215
query59	2987	3153	3030	3030
query60	300	291	286	286
query61	138	112	115	112
query62	791	775	723	723
query63	236	202	205	202
query64	4181	974	675	675
query65	3391	3296	3306	3296
query66	870	409	309	309
query67	16392	15642	15486	15486
query68	6739	844	542	542
query69	488	306	267	267
query70	1231	1102	1090	1090
query71	394	295	270	270
query72	5793	3724	3629	3629
query73	641	749	357	357
query74	10427	9240	8924	8924
query75	3209	3170	2663	2663
query76	3125	1177	768	768
query77	489	385	282	282
query78	10372	10580	9674	9674
query79	3545	934	608	608
query80	721	540	443	443
query81	496	268	218	218
query82	654	116	91	91
query83	162	165	153	153
query84	240	107	82	82
query85	783	393	298	298
query86	393	326	299	299
query87	4316	4273	4282	4273
query88	5111	2420	2400	2400
query89	416	329	300	300
query90	1760	192	193	192
query91	170	140	111	111
query92	71	58	54	54
query93	2533	885	546	546
query94	677	399	301	301
query95	339	282	275	275
query96	487	602	283	283
query97	3221	3281	3148	3148
query98	226	211	204	204
query99	1339	1389	1294	1294
Total cold run time: 296981 ms
Total hot run time: 197153 ms

@doris-robot

Copy link
Copy Markdown
ClickBench: Total hot run time: 29.32 s
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/clickbench-tools
ClickBench test result on commit b434ae9e01cfcd62bda13d80f4f7a64c327bfa4d, data reload: false
query1	0.03	0.03	0.03
query2	0.06	0.03	0.03
query3	0.24	0.07	0.06
query4	1.62	0.10	0.10
query5	0.53	0.51	0.50
query6	1.15	0.72	0.73
query7	0.02	0.01	0.01
query8	0.04	0.03	0.03
query9	0.59	0.51	0.49
query10	0.56	0.55	0.57
query11	0.15	0.11	0.10
query12	0.14	0.11	0.11
query13	0.62	0.61	0.60
query14	0.78	0.82	0.79
query15	0.85	0.83	0.84
query16	0.37	0.38	0.39
query17	1.05	1.06	1.04
query18	0.24	0.22	0.23
query19	1.84	1.86	1.88
query20	0.01	0.01	0.01
query21	15.39	0.89	0.55
query22	0.73	0.79	0.67
query23	15.10	1.53	0.56
query24	2.94	1.26	1.26
query25	0.18	0.16	0.11
query26	0.25	0.14	0.13
query27	0.05	0.06	0.04
query28	14.04	1.02	0.45
query29	12.59	3.94	3.26
query30	0.25	0.09	0.06
query31	2.84	0.60	0.38
query32	3.23	0.55	0.47
query33	3.03	3.05	3.05
query34	16.74	5.23	4.56
query35	4.57	4.51	4.60
query36	0.63	0.50	0.49
query37	0.10	0.06	0.06
query38	0.05	0.03	0.03
query39	0.04	0.02	0.02
query40	0.17	0.15	0.13
query41	0.09	0.03	0.02
query42	0.04	0.02	0.02
query43	0.04	0.04	0.03
Total cold run time: 103.98 s
Total hot run time: 29.32 s

@hello-stephen

Copy link
Copy Markdown
Contributor

BE Regression && UT Coverage Report

Increment line coverage 100.00% (7/7) 🎉

Increment coverage report
Complete coverage report

CategoryCoverage
Function Coverage76.17% (20960/27517)
Line Coverage69.52% (215944/310615)
Region Coverage67.52% (129196/191340)
Branch Coverage61.07% (67181/110002)

@zclllyybb
zclllyybb merged commit e44689f into apache:branch-3.1Aug 7, 2025
26 of 27 checks passed
@yiguoleiyiguolei added the usercase Important user case type label label Aug 8, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

usercaseImportant user case type label

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jacktengg@doris-robot@hello-stephen@zclllyybb@morrySnow@yiguolei