You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by "mrhhsg (via GitHub)" <gi...@apache.org> on 2025/10/15 10:30:01 UTC

[PR] [fix](function) Crash caused by explode function (#56991) [doris]

mrhhsg opened a new pull request, #57002:
URL: https://github.com/apache/doris/pull/57002

   pick #56991
   
   Crashed when the `element_size` is less than `_cur_offset`.
   
   ```text
   *** SIGABRT unknown detail explain (@0x3f800011a04) received by PID 72196 (TID 74961 OR 0x7bc6104c4700) from PID 72196; stack trace: ***
    0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /root/doris/be/src/common/signal_handler.h:420
    1# 0x00007FCD3B81AD10 in /lib64/libpthread.so.0
    2# __GI_raise in /lib64/libc.so.6
    3# __GI_abort in /lib64/libc.so.6
    4# 0x000055583DEC0C0D in /root/doris/be/output/lib/doris_be
    5# google::LogMessage::SendToLog() in /root/doris/be/output/lib/doris_be
    6# google::LogMessage::Flush() in /root/doris/be/output/lib/doris_be
    7# google::LogMessageFatal::~LogMessageFatal() in /root/doris/be/output/lib/doris_be
    8# doris::vectorized::PODArray<unsigned char, 4096ul, doris::Allocator<false, false, false, doris::DefaultMemoryAllocator, false>, 16ul, 15ul>::operator[](long) const at /root/doris/be/src/vec/common/pod_array.h:466
    9# doris::vectorized::ColumnVector<(doris::PrimitiveType)2>::insert_range_from(doris::vectorized::IColumn const&, unsigned long, unsigned long) at /root/doris/be/src/vec/columns/column_vector.cpp:278
   10# doris::vectorized::VExplodeV2TableFunction::get_value(doris::COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&, int) at /root/doris/be/src/vec/exprs/table_function/vexplode_v2.cpp:233
   11# doris::pipeline::TableFunctionLocalState::get_expanded_block(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /root/doris/be/src/pipeline/exec/table_function_operator.cpp:199
   12# doris::pipeline::TableFunctionOperatorX::pull(doris::RuntimeState*, doris::vectorized::Block*, bool*) const at /root/doris/be/src/pipeline/exec/table_function_operator.h:119
   13# doris::pipeline::StatefulOperatorX<doris::pipeline::TableFunctionLocalState>::get_block(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /root/doris/be/src/pipeline/exec/operator.cpp:707
   14# doris::pipeline::OperatorXBase::get_block_after_projects(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /root/doris/be/src/pipeline/exec/operator.cpp:397
   15# doris::pipeline::PipelineTask::execute(bool*) at /root/doris/be/src/pipeline/pipeline_task.cpp:532
   16# doris::pipeline::TaskScheduler::_do_work(int) at /root/doris/be/src/pipeline/task_scheduler.cpp:146
   17# doris::pipeline::TaskScheduler::start()::$_0::operator()() const at /root/doris/be/src/pipeline/task_scheduler.cpp:67
   18# void std::__invoke_impl<void, doris::pipeline::TaskScheduler::start()::$_0&>(std::__invoke_other, doris::pipeline::TaskScheduler::start()::$_0&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/invoke.h:63
   19# std::enable_if<is_invocable_r_v<void, doris::pipeline::TaskScheduler::start()::$_0&>, void>::type std::__invoke_r<void, doris::pipeline::TaskScheduler::start()::$_0&>(doris::pipeline::TaskScheduler::start()::$_0&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/invoke.h:119
   20# std::_Function_handler<void (), doris::pipeline::TaskScheduler::start()::$_0>::_M_invoke(std::_Any_data const&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/std_function.h:292
   21# std::function<void ()>::operator()() const at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/std_function.h:593
   22# doris::FunctionRunnable::run() at /root/doris/be/src/util/threadpool.cpp:60
   23# doris::ThreadPool::dispatch_thread() at /root/doris/be/src/util/threadpool.cpp:614
   24# void std::__invoke_impl<void, void (doris::ThreadPool::*&)(), doris::ThreadPool*&>(std::__invoke_memfun_deref, void (doris::ThreadPool::*&)(), doris::ThreadPool*&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/invoke.h:76
   25# std::__invoke_result<void (doris::ThreadPool::*&)(), doris::ThreadPool*&>::type std::__invoke<void (doris::ThreadPool::*&)(), doris::ThreadPool*&>(void (doris::ThreadPool::*&)(), doris::ThreadPool*&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/invoke.h:98
   26# void std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/functional:515
   27# void std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>::operator()<, void>() at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/functional:600
   28# void std::__invoke_impl<void, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&>(std::__invoke_other, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/invoke.h:63
   29# std::enable_if<is_invocable_r_v<void, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&>, void>::type std::__invoke_r<void, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&>(std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/invoke.h:119
   30# std::_Function_handler<void (), std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()> >::_M_invoke(std::_Any_data const&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/std_function.h:292
   31# std::function<void ()>::operator()() const at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/std_function.h:593
   32# doris::Thread::supervise_thread(void*) at /root/doris/be/src/util/thread.cpp:460
   33# asan_thread_start(void*) in /root/doris/be/output/lib/doris_be
   34# start_thread in /lib64/libpthread.so.0
   35# __GI___clone in /lib64/libc.so.6
   ```
   
   Related PR: #xxx
   
   Problem Summary:
   
   None
   
   - Test <!-- At least one of them must be included. -->
       - [ ] 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 <!-- Add your reason?  -->
   
   - Behavior changed:
       - [ ] No.
       - [ ] Yes. <!-- Explain the behavior change -->
   
   - Does this need documentation?
       - [ ] No.
   - [ ] Yes. <!-- Add document PR link here. eg: https://github.com/apache/doris-website/pull/1214 -->
   
   - [ ] Confirm the release note
   - [ ] Confirm test cases
   - [ ] Confirm document
   - [ ] Add branch pick label <!-- Add branch pick label that this PR should merge into -->
   
   ### What problem does this PR solve?
   
   Issue Number: close #xxx
   
   Related PR: #xxx
   
   Problem Summary:
   
   ### Release note
   
   None
   
   ### Check List (For Author)
   
   - Test <!-- At least one of them must be included. -->
       - [ ] 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 <!-- Add your reason?  -->
   
   - Behavior changed:
       - [ ] No.
       - [ ] Yes. <!-- Explain the behavior change -->
   
   - Does this need documentation?
       - [ ] No.
       - [ ] Yes. <!-- Add document PR link here. eg: https://github.com/apache/doris-website/pull/1214 -->
   
   ### Check List (For Reviewer who merge this PR)
   
   - [ ] Confirm the release note
   - [ ] Confirm test cases
   - [ ] Confirm document
   - [ ] Add branch pick label <!-- Add branch pick label that this PR should merge into -->
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](function) Crash caused by explode function (#56991) [doris]

Posted by "mrhhsg (via GitHub)" <gi...@apache.org>.
mrhhsg commented on PR #57002:
URL: https://github.com/apache/doris/pull/57002#issuecomment-3405726426

   run buildall


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](function) Crash caused by explode function (#56991) [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #57002:
URL: https://github.com/apache/doris/pull/57002#issuecomment-3405889411

   
   <details>
   <summary>TPC-H: <b>Total hot run time: 32629 ms</b></summary>
   
   ```
   machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
   scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools
   Tpch sf100 test result on commit 5ec81d50f886907d867205e3be28c76b5f3ebe09, data reload: false
   
   ------ Round 1 ----------------------------------
   q1	17591	5378	5406	5378
   q2	2030	420	280	280
   q3	11585	1238	753	753
   q4	10234	859	454	454
   q5	8225	2393	2076	2076
   q6	183	161	133	133
   q7	875	740	625	625
   q8	9322	1406	1127	1127
   q9	5147	4919	4846	4846
   q10	6755	2261	1823	1823
   q11	484	276	267	267
   q12	327	349	211	211
   q13	17781	3576	3016	3016
   q14	218	221	205	205
   q15	525	471	471	471
   q16	434	421	371	371
   q17	591	860	359	359
   q18	6849	6387	6513	6387
   q19	1299	963	511	511
   q20	321	350	204	204
   q21	2741	2191	2120	2120
   q22	1104	1082	1012	1012
   Total cold run time: 104621 ms
   Total hot run time: 32629 ms
   
   ----- Round 2, with runtime_filter_mode=off -----
   q1	5454	5461	5410	5410
   q2	251	328	238	238
   q3	2313	2689	2328	2328
   q4	1367	1816	1418	1418
   q5	4356	4846	4969	4846
   q6	174	167	126	126
   q7	2087	1936	1794	1794
   q8	2586	2791	2762	2762
   q9	7264	7195	7174	7174
   q10	3039	3331	2752	2752
   q11	562	500	519	500
   q12	652	779	624	624
   q13	3378	3773	3142	3142
   q14	281	294	273	273
   q15	531	472	489	472
   q16	440	504	429	429
   q17	1218	1734	1229	1229
   q18	7616	7335	7319	7319
   q19	760	1125	1033	1033
   q20	2007	2054	1924	1924
   q21	5390	4887	4591	4591
   q22	1121	1085	1047	1047
   Total cold run time: 52847 ms
   Total hot run time: 51431 ms
   ```
   </details>
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] branch-3.1: [fix](function) Crash caused by explode function #56991 [doris]

Posted by "morrySnow (via GitHub)" <gi...@apache.org>.
morrySnow merged PR #57002:
URL: https://github.com/apache/doris/pull/57002


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](function) Crash caused by explode function (#56991) [doris]

Posted by "hello-stephen (via GitHub)" <gi...@apache.org>.
hello-stephen commented on PR #57002:
URL: https://github.com/apache/doris/pull/57002#issuecomment-3405725658

   
   Thank you for your contribution to Apache Doris.
   Don't know what should be done next? See [How to process your PR](https://cwiki.apache.org/confluence/display/DORIS/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?
       


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](function) Crash caused by explode function (#56991) [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #57002:
URL: https://github.com/apache/doris/pull/57002#issuecomment-3405927994

   
   <details>
   <summary>TPC-DS: <b>Total hot run time: 193123 ms</b></summary>
   
   ```
   machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
   scripts: https://github.com/apache/doris/tree/master/tools/tpcds-tools
   TPC-DS sf100 test result on commit 5ec81d50f886907d867205e3be28c76b5f3ebe09, data reload: false
   
   query1	949	401	396	396
   query2	6224	1960	1868	1868
   query3	8690	212	210	210
   query4	33841	24068	23598	23598
   query5	3775	588	468	468
   query6	285	202	194	194
   query7	4217	491	323	323
   query8	296	244	233	233
   query9	9481	2588	2589	2588
   query10	453	320	260	260
   query11	18161	15535	15154	15154
   query12	161	107	107	107
   query13	1561	549	422	422
   query14	9629	6777	6585	6585
   query15	220	190	182	182
   query16	7960	643	514	514
   query17	1574	756	613	613
   query18	2149	417	327	327
   query19	213	201	163	163
   query20	133	136	121	121
   query21	204	130	111	111
   query22	4757	4762	4748	4748
   query23	35269	34296	34381	34296
   query24	7709	2743	2727	2727
   query25	552	509	437	437
   query26	1200	288	178	178
   query27	2223	495	373	373
   query28	5250	2242	2201	2201
   query29	819	612	470	470
   query30	250	189	177	177
   query31	1025	939	858	858
   query32	90	66	59	59
   query33	527	390	352	352
   query34	749	877	524	524
   query35	793	831	747	747
   query36	1029	1073	961	961
   query37	217	92	68	68
   query38	3995	4047	4112	4047
   query39	1520	1486	1478	1478
   query40	204	127	109	109
   query41	50	52	45	45
   query42	126	106	99	99
   query43	506	502	485	485
   query44	1389	839	845	839
   query45	182	184	178	178
   query46	903	1088	678	678
   query47	2038	2016	1959	1959
   query48	396	430	354	354
   query49	796	508	435	435
   query50	680	701	431	431
   query51	7481	7223	7306	7223
   query52	101	100	98	98
   query53	232	259	198	198
   query54	565	578	487	487
   query55	82	81	80	80
   query56	269	271	282	271
   query57	1297	1301	1234	1234
   query58	238	220	243	220
   query59	3186	3275	3129	3129
   query60	296	290	283	283
   query61	116	115	112	112
   query62	820	757	704	704
   query63	236	196	201	196
   query64	4601	1010	652	652
   query65	3378	3290	3287	3287
   query66	1036	418	324	324
   query67	16327	15850	15557	15557
   query68	7856	836	556	556
   query69	488	309	273	273
   query70	1133	1136	1100	1100
   query71	380	292	274	274
   query72	5688	3743	3888	3743
   query73	637	739	352	352
   query74	10224	9123	9013	9013
   query75	3184	3185	2687	2687
   query76	3147	1135	789	789
   query77	532	373	287	287
   query78	10249	10416	9641	9641
   query79	3272	891	609	609
   query80	645	524	455	455
   query81	516	259	222	222
   query82	576	121	91	91
   query83	178	167	149	149
   query84	282	116	84	84
   query85	784	367	308	308
   query86	392	309	315	309
   query87	4283	4376	4231	4231
   query88	4924	2406	2413	2406
   query89	406	329	300	300
   query90	1814	191	193	191
   query91	136	146	126	126
   query92	71	57	52	52
   query93	2072	911	556	556
   query94	687	401	322	322
   query95	352	292	283	283
   query96	490	613	286	286
   query97	3161	3254	3130	3130
   query98	216	231	204	204
   query99	1536	1407	1289	1289
   Total cold run time: 295992 ms
   Total hot run time: 193123 ms
   ```
   </details>
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](function) Crash caused by explode function (#56991) [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #57002:
URL: https://github.com/apache/doris/pull/57002#issuecomment-3405946165

   
   <details>
   <summary>ClickBench: <b>Total hot run time: 29.23 s</b></summary>
   
   ```
   machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
   scripts: https://github.com/apache/doris/tree/master/tools/clickbench-tools
   ClickBench test result on commit 5ec81d50f886907d867205e3be28c76b5f3ebe09, data reload: false
   
   query1	0.03	0.03	0.03
   query2	0.06	0.03	0.04
   query3	0.24	0.06	0.06
   query4	1.62	0.11	0.10
   query5	0.52	0.52	0.51
   query6	1.13	0.72	0.71
   query7	0.03	0.02	0.02
   query8	0.05	0.04	0.03
   query9	0.56	0.51	0.52
   query10	0.56	0.54	0.56
   query11	0.14	0.10	0.10
   query12	0.13	0.11	0.11
   query13	0.62	0.62	0.59
   query14	0.77	0.81	0.78
   query15	0.84	0.83	0.82
   query16	0.42	0.39	0.41
   query17	1.06	1.07	1.04
   query18	0.24	0.23	0.23
   query19	1.97	1.87	1.89
   query20	0.02	0.01	0.01
   query21	15.37	0.96	0.59
   query22	0.74	0.86	0.66
   query23	15.05	1.41	0.50
   query24	3.33	1.31	1.12
   query25	0.19	0.24	0.11
   query26	0.24	0.16	0.13
   query27	0.07	0.05	0.04
   query28	13.88	1.01	0.43
   query29	12.58	3.90	3.29
   query30	0.25	0.09	0.06
   query31	2.84	0.61	0.38
   query32	3.22	0.54	0.46
   query33	3.05	3.05	3.04
   query34	16.61	5.19	4.60
   query35	4.60	4.56	4.56
   query36	0.64	0.50	0.47
   query37	0.08	0.06	0.06
   query38	0.05	0.04	0.04
   query39	0.03	0.02	0.02
   query40	0.16	0.12	0.13
   query41	0.08	0.03	0.02
   query42	0.03	0.02	0.02
   query43	0.04	0.03	0.03
   Total cold run time: 104.14 s
   Total hot run time: 29.23 s
   ```
   </details>
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org