Skip to content

Conversation

@mrhhsg
Copy link
Member

@mrhhsg mrhhsg commented Sep 9, 2025

What problem does this PR solve?

/root/doris/be/src/vec/exprs/vexpr_context.cpp:61:5: runtime error: member call on null pointer of type 'doris::vectorized::IColumn'
*** Query id: 4de27b4f69f442db-b95f0945ca48a16e ***
*** is nereids: 1 ***
*** tablet id: 0 ***
*** Aborted at 1757407871 (unix time) try "date -d @1757407871" if you are using GNU date ***
*** Current BE git commitID: ecf3edb680 ***
*** SIGSEGV address not mapped to object (@0x0) received by PID 223317 (TID 226216 OR 0x7b53e70b3700) from PID 0; stack trace: ***
 0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /root/doris/be/src/common/signal_handler.h:420
 1# 0x00007F5C38CFED10 in /lib64/libpthread.so.0
 2# doris::vectorized::VExprContext::execute(doris::vectorized::Block*, int*) at /root/doris/be/src/vec/exprs/vexpr_context.cpp:61
 3# doris::vectorized::Scanner::_do_projections(doris::vectorized::Block*, doris::vectorized::Block*) at /root/doris/be/src/vec/exec/scan/scanner.cpp:191
 4# doris::vectorized::Scanner::get_block_after_projects(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /root/doris/be/src/vec/exec/scan/scanner.cpp:83
 5# doris::vectorized::ScannerScheduler::_scanner_scan(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>) at /root/doris/be/src/vec/exec/scan/scanner_scheduler.cpp:182
 6# doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>)::$_0::operator()() const::{lambda()#1}::operator()() const::{lambda()#1}::operator()() const at /root/doris/be/src/vec/exec/scan/scanner_scheduler.cpp:96
 7# doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>)::$_0::operator()() const::{lambda()#1}::operator()() const at /root/doris/be/src/vec/exec/scan/scanner_scheduler.cpp:95
 8# bool std::__invoke_impl<bool, doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>)::$_0::operator()() const::{lambda()#1}&>(std::__invoke_other, doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>)::$_0::operator()() const::{lambda()#1}&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/invoke.h:63
 9# std::enable_if<is_invocable_r_v<bool, doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>)::$_0::operator()() const::{lambda()#1}&>, bool>::type std::__invoke_r<bool, doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>)::$_0::operator()() const::{lambda()#1}&>(doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>)::$_0::operator()() const::{lambda()#1}&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/invoke.h:116
10# std::_Function_handler<bool (), doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>)::$_0::operator()() const::{lambda()#1}>::_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
11# std::function<bool ()>::operator()() const at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/std_function.h:593
12# doris::vectorized::ScannerSplitRunner::process_for(std::chrono::duration<long, std::ratio<1l, 1000000000l> >) at /root/doris/be/src/vec/exec/scan/scanner_scheduler.cpp:410
13# doris::vectorized::PrioritizedSplitRunner::process() at /root/doris/be/src/vec/exec/executor/time_sharing/prioritized_split_runner.cpp:103
14# doris::vectorized::TimeSharingTaskExecutor::_dispatch_thread() at /root/doris/be/src/vec/exec/executor/time_sharing/time_sharing_task_executor.cpp:570
15# void std::__invoke_impl<void, void (doris::vectorized::TimeSharingTaskExecutor::*&)(), doris::vectorized::TimeSharingTaskExecutor*&>(std::__invoke_memfun_deref, void (doris::vectorized::TimeSharingTaskExecutor::*&)(), doris::vectorized::TimeSharingTaskExecutor*&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/invoke.h:76
16# std::__invoke_result<void (doris::vectorized::TimeSharingTaskExecutor::*&)(), doris::vectorized::TimeSharingTaskExecutor*&>::type std::__invoke<void (doris::vectorized::TimeSharingTaskExecutor::*&)(), doris::vectorized::TimeSharingTaskExecutor*&>(void (doris::vectorized::TimeSharingTaskExecutor::*&)(), doris::vectorized::TimeSharingTaskExecutor*&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/invoke.h:98
17# void std::_Bind<void (doris::vectorized::TimeSharingTaskExecutor::*(doris::vectorized::TimeSharingTaskExecutor*))()>::__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
18# void std::_Bind<void (doris::vectorized::TimeSharingTaskExecutor::*(doris::vectorized::TimeSharingTaskExecutor*))()>::operator()<, void>() at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/functional:600
19# void std::__invoke_impl<void, std::_Bind<void (doris::vectorized::TimeSharingTaskExecutor::*(doris::vectorized::TimeSharingTaskExecutor*))()>&>(std::__invoke_other, std::_Bind<void (doris::vectorized::TimeSharingTaskExecutor::*(doris::vectorized::TimeSharingTaskExecutor*))()>&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/invoke.h:63
20# std::enable_if<is_invocable_r_v<void, std::_Bind<void (doris::vectorized::TimeSharingTaskExecutor::*(doris::vectorized::TimeSharingTaskExecutor*))()>&>, void>::type std::__invoke_r<void, std::_Bind<void (doris::vectorized::TimeSharingTaskExecutor::*(doris::vectorized::TimeSharingTaskExecutor*))()>&>(std::_Bind<void (doris::vectorized::TimeSharingTaskExecutor::*(doris::vectorized::TimeSharingTaskExecutor*))()>&) at /root/ldb_toolchain_taipan/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/invoke.h:119
21# std::_Function_handler<void (), std::_Bind<void (doris::vectorized::TimeSharingTaskExecutor::*(doris::vectorized::TimeSharingTaskExecutor*))()> >::_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
22# 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
23# doris::Thread::supervise_thread(void*) at /root/doris/be/src/util/thread.cpp:460
24# asan_thread_start(void*) in /root/doris/be/output/lib/doris_be
25# start_thread in /lib64/libpthread.so.0
26# __GI___clone in /lib64/libc.so.6

Issue Number: close #xxx

Related PR: #xxx

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

@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?

@mrhhsg
Copy link
Member Author

mrhhsg commented Sep 9, 2025

run buildall

@doris-robot
Copy link

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

------ Round 1 ----------------------------------
q1	17594	5278	5024	5024
q2	2045	321	212	212
q3	10250	1316	714	714
q4	10229	1054	524	524
q5	7576	2464	2378	2378
q6	197	175	143	143
q7	947	771	643	643
q8	9373	1341	1112	1112
q9	7059	5107	5192	5107
q10	6957	2408	1977	1977
q11	517	308	279	279
q12	349	366	222	222
q13	17772	3671	3030	3030
q14	248	255	220	220
q15	585	491	499	491
q16	1043	993	951	951
q17	606	883	373	373
q18	7866	7192	7150	7150
q19	1572	974	556	556
q20	344	343	230	230
q21	3799	3249	2325	2325
q22	1081	1041	995	995
Total cold run time: 108009 ms
Total hot run time: 34656 ms

----- Round 2, with runtime_filter_mode=off -----
q1	5143	5125	5117	5117
q2	249	330	243	243
q3	2209	2713	2351	2351
q4	1356	1772	1350	1350
q5	4339	4590	4636	4590
q6	228	180	136	136
q7	2054	2008	1875	1875
q8	2651	2745	2680	2680
q9	7361	7365	7394	7365
q10	3135	3349	2890	2890
q11	596	527	508	508
q12	695	781	664	664
q13	3515	4024	3194	3194
q14	292	304	286	286
q15	531	503	500	500
q16	1084	1126	1080	1080
q17	1193	1533	1430	1430
q18	8178	7725	7687	7687
q19	786	796	801	796
q20	2015	1997	1817	1817
q21	4717	4365	4325	4325
q22	1101	1080	1002	1002
Total cold run time: 53428 ms
Total hot run time: 51886 ms

@doris-robot
Copy link

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

query1	1056	487	454	454
query2	6565	1753	1681	1681
query3	6761	223	244	223
query4	26654	23521	22865	22865
query5	4399	658	520	520
query6	363	234	225	225
query7	4652	502	298	298
query8	302	239	281	239
query9	8665	2894	2885	2885
query10	453	352	300	300
query11	15815	14998	14848	14848
query12	171	124	117	117
query13	1692	543	433	433
query14	10172	9061	9236	9061
query15	252	195	176	176
query16	7156	664	505	505
query17	977	749	617	617
query18	2012	435	385	385
query19	207	197	177	177
query20	130	134	128	128
query21	216	128	113	113
query22	4079	4251	4239	4239
query23	34015	33086	33084	33084
query24	8236	2363	2445	2363
query25	585	534	434	434
query26	1250	278	172	172
query27	2729	517	358	358
query28	4366	2281	2270	2270
query29	892	649	548	548
query30	307	227	202	202
query31	893	813	763	763
query32	94	86	81	81
query33	586	409	363	363
query34	783	862	540	540
query35	876	826	787	787
query36	962	1016	907	907
query37	148	126	106	106
query38	3552	3500	3521	3500
query39	1483	1447	1449	1447
query40	290	139	127	127
query41	68	65	61	61
query42	135	126	115	115
query43	507	489	460	460
query44	1333	865	891	865
query45	187	183	178	178
query46	864	1025	646	646
query47	1831	1852	1742	1742
query48	394	422	332	332
query49	767	510	408	408
query50	667	708	400	400
query51	3994	4059	3790	3790
query52	115	115	108	108
query53	242	276	200	200
query54	617	607	540	540
query55	95	98	93	93
query56	355	345	333	333
query57	1211	1209	1132	1132
query58	298	293	302	293
query59	2559	2634	2577	2577
query60	369	351	357	351
query61	162	158	159	158
query62	823	734	663	663
query63	235	196	202	196
query64	4615	1147	843	843
query65	4072	3987	3965	3965
query66	1177	442	428	428
query67	15794	15658	15172	15172
query68	8750	937	586	586
query69	495	340	291	291
query70	1426	1279	1299	1279
query71	570	363	332	332
query72	6156	5135	5275	5135
query73	788	737	368	368
query74	8902	9103	8748	8748
query75	4049	3239	2760	2760
query76	3652	1164	780	780
query77	818	402	328	328
query78	9773	9759	8835	8835
query79	2546	902	587	587
query80	689	580	517	517
query81	482	266	226	226
query82	438	167	139	139
query83	297	269	255	255
query84	308	123	102	102
query85	885	462	508	462
query86	378	328	318	318
query87	3686	3686	3646	3646
query88	3150	2215	2197	2197
query89	399	341	290	290
query90	1927	246	227	227
query91	160	169	132	132
query92	95	76	75	75
query93	1457	1002	658	658
query94	712	427	339	339
query95	415	340	330	330
query96	474	591	281	281
query97	2968	2995	2890	2890
query98	254	220	218	218
query99	1426	1413	1287	1287
Total cold run time: 276807 ms
Total hot run time: 189208 ms

@doris-robot
Copy link

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

query1	0.05	0.04	0.04
query2	0.10	0.05	0.06
query3	0.25	0.08	0.08
query4	1.60	0.11	0.11
query5	0.28	0.28	0.25
query6	1.20	0.65	0.64
query7	0.03	0.02	0.03
query8	0.05	0.05	0.04
query9	0.60	0.51	0.54
query10	0.58	0.58	0.56
query11	0.17	0.12	0.12
query12	0.15	0.13	0.13
query13	0.63	0.62	0.62
query14	1.03	1.03	1.06
query15	0.88	0.89	0.85
query16	0.42	0.40	0.41
query17	1.12	1.07	1.03
query18	0.21	0.20	0.20
query19	1.87	1.81	1.82
query20	0.02	0.01	0.02
query21	15.40	0.96	0.59
query22	0.80	1.24	0.90
query23	14.80	1.40	0.69
query24	7.84	0.62	0.94
query25	0.46	0.12	0.23
query26	0.67	0.17	0.15
query27	0.06	0.06	0.05
query28	9.26	0.93	0.43
query29	12.66	4.00	3.28
query30	0.29	0.13	0.11
query31	2.83	0.60	0.40
query32	3.25	0.56	0.48
query33	3.07	3.00	3.09
query34	16.08	5.55	4.90
query35	4.92	4.94	4.92
query36	0.70	0.51	0.51
query37	0.11	0.07	0.08
query38	0.08	0.05	0.04
query39	0.03	0.03	0.04
query40	0.18	0.14	0.14
query41	0.08	0.03	0.03
query42	0.03	0.03	0.03
query43	0.04	0.03	0.04
Total cold run time: 104.88 s
Total hot run time: 30.02 s

Copy link
Contributor

@csun5285 csun5285 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
Copy link
Contributor

github-actions bot commented Sep 9, 2025

PR approved by anyone and no changes requested.

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

github-actions bot commented Sep 9, 2025

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

Copy link
Member

@eldenmoon eldenmoon left a comment

Choose a reason for hiding this comment

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

LGTM

@yiguolei
Copy link
Contributor

skip check_coverage

@yiguolei yiguolei merged commit 4bc8897 into apache:master Sep 10, 2025
29 of 31 checks passed
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.

6 participants