Skip to content

[feat](function) Add limit parameter support for SPLIT_BY_STRING#60892

Open
floation-cutie wants to merge 3 commits intoapache:masterfrom
floation-cutie:feature/split-by-string-limit
Open

[feat](function) Add limit parameter support for SPLIT_BY_STRING#60892
floation-cutie wants to merge 3 commits intoapache:masterfrom
floation-cutie:feature/split-by-string-limit

Conversation

@floation-cutie
Copy link

What problem does this PR solve?

Issue Number: close #55788

Related PR: #55788

Problem Summary:
This PR implements the enhancement requested in issue #55788, adding an optional third parameter limit to the SPLIT_BY_STRING function. The limit parameter controls the maximum number of splits to perform, limiting the size of the returned array.

Solution

  • Add optional third parameter limit to SPLIT_BY_STRING(<str>, <separator>[, <limit>])
  • When limit is positive: split from left, at most limit splits, returning at most limit + 1 elements
  • When limit is negative: split from right, at most |limit| splits from the end
  • When limit is not specified or -1: split all occurrences (backward compatible)
  • Update BE function implementation in function_string.cpp and function_string.h
  • Update FE function definition in SplitByString.java and StringArithmetic.java
  • Add constant folding support for the new parameter

Examples:

SELECT SPLIT_BY_STRING('one,two,three,', ',');       -- ["one", "two", "three", ""]
SELECT SPLIT_BY_STRING('one,two,three,', ',', -1);   -- ["one", "two", "three", ""]
SELECT SPLIT_BY_STRING('one,two,three,', ',', 2);    -- ["one", "two,three,"]
SELECT SPLIT_BY_STRING('one,two,three,', ',', 3);    -- ["one", "two", "three,"]
SELECT SPLIT_BY_STRING('one,two,three,', ',', 4);    -- ["one", "two", "three", ""]
SELECT SPLIT_BY_STRING('one,two,three,', ',', 5);    -- ["one", "two", "three", ""]

Release note

[Enhancement] Add optional limit parameter to SPLIT_BY_STRING function to control maximum number of splits.

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. Added optional third parameter limit to SPLIT_BY_STRING function. The change is backward compatible; existing two-parameter calls work as before.
  • Does this need documentation?

    • No.
    • Yes. Will create documentation PR to update function reference.

Check List (For Reviewer who merge this PR)

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

@hello-stephen
Copy link
Contributor

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?

@floation-cutie
Copy link
Author

run buildall

@zclllyybb zclllyybb self-assigned this Feb 27, 2026
@doris-robot
Copy link

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

------ Round 1 ----------------------------------
============================================
q1	17619	4525	4372	4372
q2	q3	10648	820	516	516
q4	4674	361	252	252
q5	7553	1206	1032	1032
q6	167	172	149	149
q7	807	850	688	688
q8	9296	1451	1346	1346
q9	4805	4724	4664	4664
q10	6768	1882	1630	1630
q11	474	253	258	253
q12	721	578	466	466
q13	17773	4248	3427	3427
q14	226	234	216	216
q15	928	806	793	793
q16	727	721	676	676
q17	727	850	452	452
q18	6049	5408	5225	5225
q19	1231	967	627	627
q20	496	509	387	387
q21	4793	1940	1510	1510
q22	363	319	291	291
Total cold run time: 96845 ms
Total hot run time: 28972 ms

----- Round 2, with runtime_filter_mode=off -----
============================================
q1	4589	4551	4557	4551
q2	q3	1840	2180	1763	1763
q4	866	1203	792	792
q5	4034	4386	4378	4378
q6	180	176	141	141
q7	1748	1636	1506	1506
q8	2611	2701	2523	2523
q9	7658	7318	7327	7318
q10	2886	2843	2416	2416
q11	509	437	426	426
q12	510	597	451	451
q13	4020	4452	3579	3579
q14	299	305	284	284
q15	841	856	841	841
q16	741	816	716	716
q17	1164	1536	1275	1275
q18	7189	6786	6619	6619
q19	884	911	888	888
q20	2133	2250	2042	2042
q21	3950	3531	3486	3486
q22	439	414	378	378
Total cold run time: 49091 ms
Total hot run time: 46373 ms

@doris-robot
Copy link

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

query5	5080	640	535	535
query6	347	220	206	206
query7	4219	472	277	277
query8	359	258	248	248
query9	8754	2783	2762	2762
query10	513	389	353	353
query11	16944	17523	17308	17308
query12	198	130	129	129
query13	1378	516	378	378
query14	6944	3281	3257	3257
query14_1	3089	2927	2896	2896
query15	211	202	187	187
query16	1034	430	468	430
query17	1172	756	618	618
query18	2716	446	381	381
query19	215	198	167	167
query20	131	126	124	124
query21	215	134	109	109
query22	4820	4824	4773	4773
query23	17312	16873	16496	16496
query23_1	16651	16732	16503	16503
query24	7006	1606	1240	1240
query24_1	1225	1232	1222	1222
query25	544	483	415	415
query26	1247	273	147	147
query27	2747	471	284	284
query28	4462	1869	1878	1869
query29	786	551	465	465
query30	311	243	213	213
query31	868	785	671	671
query32	80	69	71	69
query33	515	329	282	282
query34	916	922	554	554
query35	636	690	587	587
query36	1126	1112	974	974
query37	129	106	80	80
query38	2903	2958	2800	2800
query39	876	880	837	837
query39_1	805	839	835	835
query40	233	154	130	130
query41	64	60	57	57
query42	103	102	105	102
query43	372	380	347	347
query44	
query45	192	185	179	179
query46	892	1041	620	620
query47	2106	2141	2027	2027
query48	304	316	227	227
query49	624	458	371	371
query50	671	276	212	212
query51	4104	4147	4044	4044
query52	107	111	99	99
query53	286	342	283	283
query54	302	270	254	254
query55	83	84	81	81
query56	299	311	323	311
query57	1400	1359	1263	1263
query58	294	277	271	271
query59	2623	2733	2672	2672
query60	346	329	323	323
query61	150	149	146	146
query62	637	581	550	550
query63	316	281	277	277
query64	4834	1270	964	964
query65	
query66	1388	446	354	354
query67	16529	16626	16449	16449
query68	
query69	398	305	283	283
query70	969	984	965	965
query71	344	301	299	299
query72	2717	2687	2404	2404
query73	546	552	327	327
query74	9995	9921	9768	9768
query75	2857	2763	2455	2455
query76	2314	1032	703	703
query77	353	395	316	316
query78	11251	11565	10689	10689
query79	1156	782	606	606
query80	1373	623	533	533
query81	542	277	248	248
query82	1345	151	113	113
query83	365	261	236	236
query84	254	118	103	103
query85	1064	499	431	431
query86	387	309	292	292
query87	3080	3078	3033	3033
query88	3557	2696	2666	2666
query89	427	369	341	341
query90	1732	168	171	168
query91	169	154	132	132
query92	77	79	68	68
query93	946	865	505	505
query94	535	311	285	285
query95	587	357	379	357
query96	648	504	228	228
query97	2440	2480	2376	2376
query98	231	220	230	220
query99	1004	976	942	942
Total cold run time: 254117 ms
Total hot run time: 183866 ms

@floation-cutie floation-cutie force-pushed the feature/split-by-string-limit branch 6 times, most recently from 125e522 to e89a95b Compare February 27, 2026 17:01
@floation-cutie
Copy link
Author

run buildall

@doris-robot
Copy link

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

------ Round 1 ----------------------------------
============================================
q1	9293	4313	4328	4313
q2	q3	831	765	519	519
q4	785	340	251	251
q5	1677	1240	1009	1009
q6	184	180	146	146
q7	795	849	660	660
q8	1081	1471	1375	1375
q9	5052	4792	4707	4707
q10	2046	1850	1633	1633
q11	397	257	242	242
q12	498	578	467	467
q13	3828	4231	3434	3434
q14	221	226	215	215
q15	867	807	800	800
q16	729	720	678	678
q17	696	861	404	404
q18	5891	5411	5170	5170
q19	1201	979	616	616
q20	532	518	398	398
q21	4632	1862	1387	1387
q22	346	290	240	240
Total cold run time: 41582 ms
Total hot run time: 28664 ms

----- Round 2, with runtime_filter_mode=off -----
============================================
q1	4391	4343	4348	4343
q2	q3	1779	2176	1715	1715
q4	826	1179	755	755
q5	4010	4337	4287	4287
q6	181	173	143	143
q7	1726	1604	1487	1487
q8	2448	2640	2558	2558
q9	7217	7037	7095	7037
q10	2506	2709	2304	2304
q11	492	438	404	404
q12	473	593	450	450
q13	3798	4255	3412	3412
q14	262	284	266	266
q15	836	786	789	786
q16	696	753	682	682
q17	1101	1421	1280	1280
q18	6804	6751	6497	6497
q19	829	817	865	817
q20	2016	2102	1946	1946
q21	3854	3417	3264	3264
q22	454	409	387	387
Total cold run time: 46699 ms
Total hot run time: 44820 ms

@doris-robot
Copy link

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

query5	5749	643	519	519
query6	334	214	195	195
query7	4217	466	277	277
query8	334	244	243	243
query9	8773	2753	2720	2720
query10	529	390	348	348
query11	17077	16847	16581	16581
query12	181	128	127	127
query13	1283	469	349	349
query14	7783	3294	2996	2996
query14_1	2846	2791	2812	2791
query15	208	198	182	182
query16	991	466	460	460
query17	1297	689	588	588
query18	2690	428	335	335
query19	214	203	176	176
query20	138	128	128	128
query21	229	144	116	116
query22	5064	4962	4756	4756
query23	17260	16841	16661	16661
query23_1	16620	16692	16540	16540
query24	6719	1624	1216	1216
query24_1	1223	1236	1252	1236
query25	554	464	412	412
query26	1242	264	161	161
query27	2766	482	287	287
query28	4526	1856	1877	1856
query29	792	569	475	475
query30	317	252	207	207
query31	873	732	654	654
query32	85	74	75	74
query33	528	333	307	307
query34	911	931	569	569
query35	642	689	588	588
query36	1095	1123	915	915
query37	154	112	88	88
query38	2920	2950	2888	2888
query39	893	868	852	852
query39_1	840	832	887	832
query40	231	154	143	143
query41	76	68	67	67
query42	114	110	108	108
query43	389	386	364	364
query44	
query45	204	190	188	188
query46	887	980	605	605
query47	2097	2122	2002	2002
query48	328	345	236	236
query49	647	481	402	402
query50	682	280	218	218
query51	4111	4091	4009	4009
query52	110	114	103	103
query53	295	337	290	290
query54	321	293	283	283
query55	90	89	87	87
query56	320	326	328	326
query57	1370	1352	1275	1275
query58	301	286	281	281
query59	2624	2732	2593	2593
query60	362	350	339	339
query61	170	170	172	170
query62	627	597	549	549
query63	311	287	291	287
query64	4971	1349	1078	1078
query65	
query66	1373	476	352	352
query67	16321	16384	16144	16144
query68	
query69	406	308	285	285
query70	912	941	949	941
query71	345	305	300	300
query72	2811	2646	2402	2402
query73	555	550	323	323
query74	10042	9972	9778	9778
query75	2848	2747	2455	2455
query76	2267	1044	681	681
query77	400	384	319	319
query78	11198	11384	10654	10654
query79	1323	815	583	583
query80	1419	622	542	542
query81	551	278	254	254
query82	997	149	115	115
query83	338	267	242	242
query84	256	119	95	95
query85	911	471	437	437
query86	480	347	303	303
query87	3146	3086	2984	2984
query88	3559	2684	2658	2658
query89	425	366	340	340
query90	1959	183	179	179
query91	161	154	131	131
query92	84	76	83	76
query93	1003	813	500	500
query94	634	331	304	304
query95	572	348	314	314
query96	636	522	228	228
query97	2488	2488	2421	2421
query98	230	216	217	216
query99	1010	1010	925	925
Total cold run time: 255702 ms
Total hot run time: 182736 ms

@hello-stephen
Copy link
Contributor

FE UT Coverage Report

Increment line coverage 6.82% (3/44) 🎉
Increment coverage report
Complete coverage report

@doris-robot
Copy link

BE UT Coverage Report

Increment line coverage 12.61% (14/111) 🎉

Increment coverage report
Complete coverage report

Category Coverage
Function Coverage 52.53% (19584/37281)
Line Coverage 36.16% (182804/505558)
Region Coverage 32.50% (141959/436822)
Branch Coverage 33.47% (61558/183931)

@hello-stephen
Copy link
Contributor

BE Regression && UT Coverage Report

Increment line coverage 45.95% (51/111) 🎉

Increment coverage report
Complete coverage report

Category Coverage
Function Coverage 71.55% (26127/36514)
Line Coverage 54.33% (273867/504064)
Region Coverage 51.63% (227683/440998)
Branch Coverage 53.05% (97893/184523)

@floation-cutie floation-cutie force-pushed the feature/split-by-string-limit branch from 25f35e6 to 5d70879 Compare February 27, 2026 20:29
@floation-cutie
Copy link
Author

run buildall

@doris-robot
Copy link

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

------ Round 1 ----------------------------------
============================================
q1	17638	4520	4334	4334
q2	q3	10668	788	519	519
q4	4684	362	258	258
q5	7544	1205	1010	1010
q6	166	171	149	149
q7	797	849	670	670
q8	9289	1449	1315	1315
q9	4841	4688	4677	4677
q10	6764	1861	1652	1652
q11	453	261	238	238
q12	693	561	476	476
q13	17773	4251	3399	3399
q14	221	226	208	208
q15	950	816	789	789
q16	748	717	683	683
q17	694	860	432	432
q18	6043	5421	5266	5266
q19	1438	956	631	631
q20	502	501	390	390
q21	4710	1847	1376	1376
q22	336	283	249	249
Total cold run time: 96952 ms
Total hot run time: 28721 ms

----- Round 2, with runtime_filter_mode=off -----
============================================
q1	4394	4346	4332	4332
q2	q3	1775	2155	1714	1714
q4	833	1207	743	743
q5	4007	4304	4333	4304
q6	179	173	139	139
q7	1748	1595	1491	1491
q8	2408	2633	2501	2501
q9	7282	7104	7041	7041
q10	2526	2711	2314	2314
q11	497	432	409	409
q12	485	563	432	432
q13	3796	4203	3420	3420
q14	265	279	263	263
q15	834	783	779	779
q16	677	725	682	682
q17	1092	1455	1245	1245
q18	6948	6659	6574	6574
q19	848	779	855	779
q20	2001	2079	1952	1952
q21	3859	3407	3331	3331
q22	452	409	390	390
Total cold run time: 46906 ms
Total hot run time: 44835 ms

@floation-cutie floation-cutie force-pushed the feature/split-by-string-limit branch from 5d70879 to 1c9eaa9 Compare February 27, 2026 20:56
@doris-robot
Copy link

TPC-DS: Total hot run time: 182960 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 5d70879e4b99279df8267c422a767cb91a48e87f, data reload: false

query5	5248	636	534	534
query6	329	215	207	207
query7	4210	464	264	264
query8	326	248	233	233
query9	8706	2694	2721	2694
query10	562	370	349	349
query11	17032	16804	16609	16609
query12	196	135	124	124
query13	1275	453	346	346
query14	6850	3208	2946	2946
query14_1	2821	2788	2779	2779
query15	208	193	175	175
query16	989	392	448	392
query17	1071	715	618	618
query18	2716	448	346	346
query19	206	213	181	181
query20	143	134	131	131
query21	228	148	120	120
query22	5039	5042	4892	4892
query23	17325	16912	16599	16599
query23_1	16719	16714	16877	16714
query24	7137	1655	1228	1228
query24_1	1222	1252	1244	1244
query25	571	484	435	435
query26	1239	274	161	161
query27	2744	489	289	289
query28	4481	1854	1865	1854
query29	823	585	497	497
query30	320	260	219	219
query31	873	721	649	649
query32	87	76	80	76
query33	529	347	303	303
query34	924	909	568	568
query35	664	678	615	615
query36	1119	1151	1015	1015
query37	135	109	85	85
query38	2934	2952	2892	2892
query39	905	870	860	860
query39_1	839	850	835	835
query40	232	161	174	161
query41	70	60	60	60
query42	111	106	105	105
query43	384	382	364	364
query44	
query45	198	185	180	180
query46	900	975	617	617
query47	2140	2151	2046	2046
query48	299	309	224	224
query49	618	458	368	368
query50	670	278	212	212
query51	4083	4108	3979	3979
query52	112	110	98	98
query53	292	341	277	277
query54	289	263	262	262
query55	88	83	84	83
query56	297	310	310	310
query57	1347	1322	1284	1284
query58	287	276	266	266
query59	2618	2723	2557	2557
query60	349	330	307	307
query61	144	151	142	142
query62	615	580	551	551
query63	308	310	281	281
query64	4870	1271	978	978
query65	
query66	1395	451	353	353
query67	16333	16417	16494	16417
query68	
query69	417	301	293	293
query70	993	970	929	929
query71	340	310	294	294
query72	2781	2401	2477	2401
query73	546	544	314	314
query74	10026	9951	9774	9774
query75	2831	2775	2447	2447
query76	2287	1026	662	662
query77	381	402	314	314
query78	11289	11514	10721	10721
query79	1146	791	589	589
query80	1377	606	515	515
query81	566	275	277	275
query82	1261	150	113	113
query83	338	254	238	238
query84	249	120	101	101
query85	896	481	427	427
query86	443	333	258	258
query87	3102	3109	3025	3025
query88	3525	2654	2670	2654
query89	423	362	341	341
query90	1961	189	173	173
query91	163	157	132	132
query92	74	80	70	70
query93	898	835	517	517
query94	641	330	299	299
query95	576	394	317	317
query96	634	514	233	233
query97	2489	2485	2391	2391
query98	234	227	214	214
query99	1021	1007	918	918
Total cold run time: 254268 ms
Total hot run time: 182960 ms

@floation-cutie floation-cutie force-pushed the feature/split-by-string-limit branch from 1c9eaa9 to e9c53c3 Compare February 27, 2026 21:05
@floation-cutie
Copy link
Author

run buildall

@doris-robot
Copy link

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

------ Round 1 ----------------------------------
============================================
q1	17607	4393	4296	4296
q2	q3	10647	766	524	524
q4	4675	360	256	256
q5	7547	1170	1025	1025
q6	175	176	147	147
q7	791	859	653	653
q8	9293	1446	1271	1271
q9	4740	4689	4685	4685
q10	6772	1867	1635	1635
q11	472	258	244	244
q12	692	575	477	477
q13	17768	4217	3426	3426
q14	235	243	211	211
q15	922	792	787	787
q16	737	723	697	697
q17	692	875	401	401
q18	5985	5290	5211	5211
q19	1248	983	623	623
q20	513	490	384	384
q21	4704	1887	1343	1343
q22	335	279	239	239
Total cold run time: 96550 ms
Total hot run time: 28535 ms

----- Round 2, with runtime_filter_mode=off -----
============================================
q1	4418	4355	4385	4355
q2	q3	1753	2164	1727	1727
q4	828	1155	803	803
q5	4017	4333	4274	4274
q6	177	173	135	135
q7	1709	1596	1476	1476
q8	2418	2653	2488	2488
q9	7156	7094	7023	7023
q10	2494	2702	2314	2314
q11	486	418	406	406
q12	488	567	432	432
q13	3794	4240	3432	3432
q14	264	278	262	262
q15	830	784	790	784
q16	684	730	677	677
q17	1087	1484	1239	1239
q18	6912	6750	6568	6568
q19	829	796	831	796
q20	1988	2086	1945	1945
q21	3877	3428	3260	3260
q22	444	422	379	379
Total cold run time: 46653 ms
Total hot run time: 44775 ms

@doris-robot
Copy link

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

query5	5518	631	541	541
query6	323	223	191	191
query7	4217	467	263	263
query8	339	243	236	236
query9	8776	2751	2733	2733
query10	547	382	348	348
query11	17051	16848	16596	16596
query12	205	125	121	121
query13	1274	446	349	349
query14	7363	3201	3002	3002
query14_1	2898	2810	2781	2781
query15	210	194	177	177
query16	964	467	456	456
query17	1170	733	629	629
query18	2703	440	346	346
query19	206	208	183	183
query20	142	125	129	125
query21	222	146	121	121
query22	4764	4893	4642	4642
query23	17265	16790	16586	16586
query23_1	16743	16692	16636	16636
query24	6927	1634	1237	1237
query24_1	1241	1239	1257	1239
query25	571	494	438	438
query26	1246	281	158	158
query27	2740	485	295	295
query28	4505	1855	1863	1855
query29	814	589	507	507
query30	316	255	220	220
query31	885	728	644	644
query32	100	82	75	75
query33	522	355	296	296
query34	918	913	570	570
query35	650	681	603	603
query36	1092	1139	968	968
query37	147	104	84	84
query38	2920	2915	2902	2902
query39	902	871	854	854
query39_1	818	840	847	840
query40	253	200	137	137
query41	83	74	61	61
query42	110	109	109	109
query43	393	375	351	351
query44	
query45	202	185	184	184
query46	884	980	619	619
query47	2124	2184	2037	2037
query48	305	316	231	231
query49	621	457	398	398
query50	677	282	219	219
query51	4144	4201	4022	4022
query52	111	108	96	96
query53	295	331	278	278
query54	289	264	260	260
query55	89	86	82	82
query56	314	307	304	304
query57	1372	1324	1251	1251
query58	288	280	270	270
query59	2516	2635	2534	2534
query60	338	345	314	314
query61	147	142	152	142
query62	597	588	536	536
query63	339	268	277	268
query64	4811	1287	986	986
query65	
query66	1367	451	351	351
query67	16320	16488	16227	16227
query68	
query69	411	299	273	273
query70	922	928	935	928
query71	338	306	292	292
query72	2910	2647	2427	2427
query73	541	546	327	327
query74	9969	9885	9747	9747
query75	2865	2743	2458	2458
query76	2281	1021	675	675
query77	363	391	319	319
query78	11169	11499	10660	10660
query79	1782	804	602	602
query80	1394	629	537	537
query81	554	279	246	246
query82	991	151	118	118
query83	337	266	240	240
query84	257	115	101	101
query85	906	474	433	433
query86	444	332	309	309
query87	3155	3098	2963	2963
query88	3505	2702	2654	2654
query89	418	371	349	349
query90	1948	174	169	169
query91	164	159	136	136
query92	78	86	74	74
query93	1098	857	508	508
query94	635	325	286	286
query95	556	331	383	331
query96	637	519	225	225
query97	2480	2467	2431	2431
query98	224	216	218	216
query99	1017	1006	939	939
Total cold run time: 255100 ms
Total hot run time: 182599 ms

@hello-stephen
Copy link
Contributor

FE UT Coverage Report

Increment line coverage 81.82% (36/44) 🎉
Increment coverage report
Complete coverage report

@floation-cutie floation-cutie force-pushed the feature/split-by-string-limit branch 2 times, most recently from 33b32c5 to ed69d1c Compare February 28, 2026 03:16
@floation-cutie floation-cutie force-pushed the feature/split-by-string-limit branch 2 times, most recently from 1a0d91e to 76c1542 Compare February 28, 2026 03:21
@floation-cutie floation-cutie force-pushed the feature/split-by-string-limit branch from 76c1542 to 9e968fe Compare February 28, 2026 03:30
@floation-cutie
Copy link
Author

run buildall

@hello-stephen
Copy link
Contributor

FE UT Coverage Report

Increment line coverage 81.82% (36/44) 🎉
Increment coverage report
Complete coverage report

@doris-robot
Copy link

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

------ Round 1 ----------------------------------
============================================
q1	17620	4445	4271	4271
q2	q3	10645	773	523	523
q4	4684	368	253	253
q5	7561	1203	1022	1022
q6	176	180	149	149
q7	788	875	666	666
q8	9291	1480	1304	1304
q9	4848	4811	4755	4755
q10	6815	1856	1668	1668
q11	459	252	234	234
q12	714	571	473	473
q13	17764	4209	3428	3428
q14	228	239	219	219
q15	961	800	786	786
q16	764	730	678	678
q17	728	872	412	412
q18	6011	5425	5290	5290
q19	1243	973	624	624
q20	501	483	386	386
q21	4831	1987	1530	1530
q22	404	312	271	271
Total cold run time: 97036 ms
Total hot run time: 28942 ms

----- Round 2, with runtime_filter_mode=off -----
============================================
q1	4595	4481	4535	4481
q2	q3	1899	2219	1779	1779
q4	882	1266	796	796
q5	4046	4401	4337	4337
q6	188	173	145	145
q7	1793	1677	1532	1532
q8	2554	2849	2545	2545
q9	7525	7450	7424	7424
q10	2665	2981	2508	2508
q11	522	436	411	411
q12	489	598	445	445
q13	3985	4451	3622	3622
q14	290	294	274	274
q15	857	813	792	792
q16	720	781	704	704
q17	1186	1554	1474	1474
q18	7169	6832	6526	6526
q19	876	889	880	880
q20	2080	2151	1986	1986
q21	3963	3516	3332	3332
q22	516	465	389	389
Total cold run time: 48800 ms
Total hot run time: 46382 ms

@doris-robot
Copy link

TPC-DS: Total hot run time: 183940 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 9e968fe2c150391b5fd0c107e173788d1d514a0d, data reload: false

query5	4526	625	517	517
query6	312	222	220	220
query7	4221	476	276	276
query8	336	233	226	226
query9	8734	2735	2747	2735
query10	517	369	331	331
query11	16882	16862	16536	16536
query12	183	124	123	123
query13	1276	478	348	348
query14	6250	3254	2999	2999
query14_1	2874	2826	2815	2815
query15	196	187	179	179
query16	972	476	458	458
query17	1110	724	607	607
query18	2546	446	349	349
query19	215	209	186	186
query20	139	128	129	128
query21	226	149	121	121
query22	4840	5956	5633	5633
query23	17723	17174	16817	16817
query23_1	16984	17118	16994	16994
query24	7114	1594	1232	1232
query24_1	1237	1256	1179	1179
query25	528	451	395	395
query26	1231	263	149	149
query27	2774	456	286	286
query28	4523	1857	1847	1847
query29	793	558	464	464
query30	305	241	207	207
query31	854	744	662	662
query32	81	74	74	74
query33	512	319	312	312
query34	931	907	578	578
query35	626	673	605	605
query36	1088	1126	985	985
query37	128	93	81	81
query38	2946	2941	2900	2900
query39	898	977	830	830
query39_1	855	830	898	830
query40	222	150	137	137
query41	62	59	58	58
query42	108	109	107	107
query43	383	370	360	360
query44	
query45	192	191	186	186
query46	873	979	602	602
query47	2107	2173	2023	2023
query48	300	306	231	231
query49	624	454	371	371
query50	672	290	217	217
query51	4068	4065	4063	4063
query52	107	104	102	102
query53	288	331	279	279
query54	295	257	253	253
query55	93	85	83	83
query56	306	305	306	305
query57	1325	1324	1276	1276
query58	285	279	279	279
query59	2579	2664	2545	2545
query60	321	332	351	332
query61	144	145	145	145
query62	626	583	529	529
query63	306	281	270	270
query64	4830	1242	972	972
query65	
query66	1434	461	355	355
query67	16460	16454	16162	16162
query68	
query69	394	309	285	285
query70	998	969	971	969
query71	335	305	294	294
query72	2710	2632	2360	2360
query73	534	544	324	324
query74	10029	9909	9757	9757
query75	2854	2773	2467	2467
query76	2312	1054	688	688
query77	366	422	310	310
query78	11095	11358	10678	10678
query79	1180	801	600	600
query80	710	648	568	568
query81	501	274	261	261
query82	1338	167	118	118
query83	372	275	248	248
query84	254	116	105	105
query85	897	546	510	510
query86	423	341	315	315
query87	3095	3099	2970	2970
query88	3504	2670	2642	2642
query89	427	370	344	344
query90	1950	184	177	177
query91	167	156	135	135
query92	71	76	70	70
query93	886	836	501	501
query94	441	323	299	299
query95	586	335	377	335
query96	653	528	230	230
query97	2437	2487	2414	2414
query98	234	217	216	216
query99	1039	1002	906	906
Total cold run time: 251687 ms
Total hot run time: 183940 ms

@hello-stephen
Copy link
Contributor

BE UT Coverage Report

Increment line coverage 87.39% (97/111) 🎉

Increment coverage report
Complete coverage report

Category Coverage
Function Coverage 52.59% (19605/37281)
Line Coverage 36.22% (183111/505559)
Region Coverage 32.55% (142190/436822)
Branch Coverage 33.51% (61635/183931)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Enhancement] function SPLIT_BY_STRING(<str>, <separator>[, <limit>])

4 participants