You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by "TangSiyang2001 (via GitHub)" <gi...@apache.org> on 2023/04/16 04:51:25 UTC

[GitHub] [doris] TangSiyang2001 opened a new issue, #18700: [Bug] dangling pointer in scanner context

TangSiyang2001 opened a new issue, #18700:
URL: https://github.com/apache/doris/issues/18700

   ### Search before asking
   
   - [X] I had searched in the [issues](https://github.com/apache/doris/issues?q=is%3Aissue) and found no similar issues.
   
   
   ### Version
   
   current master
   
   ### What's Wrong?
   
   When running p0 in CI, found BE crash, and it happended 3 times in 4 runnings total, which may thought to be a problem.
   
   According to be.out, a dangling pointer may happen in `scanner_context::clear_and_join`.
   
   be.out
   ```
   start time: Sat 15 Apr 2023 11:40:29 PM CST
   WARNING: Logging before InitGoogleLogging() is written to STDERR
   I0415 23:40:29.853989 1715262 doris_main.cpp:322] enable_fuzzy_mode is true, set fuzzy configs
   SLF4J: Class path contains multiple SLF4J bindings.
   SLF4J: Found binding in [jar:file:/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/hadoop_hdfs/common/lib/slf4j-reload4j-1.7.36.jar!/org/slf4j/impl/StaticLoggerBinder.class]
   SLF4J: Found binding in [jar:file:/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/java-udf-jar-with-dependencies.jar!/org/slf4j/impl/StaticLoggerBinder.class]
   SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
   SLF4J: Actual binding is of type [org.slf4j.impl.Reload4jLoggerFactory]
   =================================================================
   ==1715262==ERROR: AddressSanitizer: heap-use-after-free on address 0x6030034fe5e8 at pc 0x55dacf08b288 bp 0x7f784cf078b0 sp 0x7f784cf078a0
   READ of size 8 at 0x6030034fe5e8 thread T278 (TaskSchedulerTh)
       #0 0x55dacf08b287 in std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >::~unique_ptr() /var/local/ldb-toolchain/include/c++/11/bits/unique_ptr.h:360
       #1 0x55dacf08b287 in void std::_Destroy<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > >(std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*) /var/local/ldb-toolchain/include/c++/11/bits/stl_construct.h:140
       #2 0x55dacf08b287 in void std::_Destroy_aux<false>::__destroy<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*>(std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*, std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*) /var/local/ldb-toolchain/include/c++/11/bits/stl_construct.h:152
       #3 0x55dacf08b287 in void std::_Destroy<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*>(std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*, std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*) /var/local/ldb-toolchain/include/c++/11/bits/stl_construct.h:185
       #4 0x55dacf08b287 in void std::_Destroy<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*, std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > >(std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*, std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*, std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > >&) /var/local/ldb-toolchain/include/c++/11/bits/alloc_traits.h:746
       #5 0x55dacf08b287 in std::vector<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >, std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > > >::_M_erase_at_end(std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*) /var/local/ldb-toolchain/include/c++/11/bits/stl_vector.h:1796
       #6 0x55dacf08b287 in std::vector<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >, std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > > >::clear() /var/local/ldb-toolchain/include/c++/11/bits/stl_vector.h:1499
       #7 0x55dacf08b287 in doris::vectorized::ScannerContext::clear_and_join(doris::vectorized::VScanNode*, doris::RuntimeState*) /root/doris/be/src/vec/exec/scan/scanner_context.cpp:275
       #8 0x55dacf100dc3 in doris::vectorized::VScanNode::release_resource(doris::RuntimeState*) /root/doris/be/src/vec/exec/scan/vscan_node.cpp:424
       #9 0x55dacf7da07d in doris::pipeline::StreamingOperator<doris::pipeline::ScanOperatorBuilder>::close(doris::RuntimeState*) /root/doris/be/src/pipeline/exec/operator.h:349
       #10 0x55dacf7ac50f in doris::pipeline::PipelineTask::close() /root/doris/be/src/pipeline/pipeline_task.cpp:231
       #11 0x55dacf7c0343 in doris::pipeline::TaskScheduler::_try_close_task(doris::pipeline::PipelineTask*, doris::pipeline::PipelineTaskState) /root/doris/be/src/pipeline/task_scheduler.cpp:302
       #12 0x55dacf7ccf1f in doris::pipeline::TaskScheduler::_do_work(unsigned long) /root/doris/be/src/pipeline/task_scheduler.cpp:272
       #13 0x55dacf7cd84d in void std::__invoke_impl<void, void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&>(std::__invoke_memfun_deref, void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:74
       #14 0x55dacf7cd84d in std::__invoke_result<void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&>::type std::__invoke<void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&>(void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:96
       #15 0x55dacf7cd84d in void std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) /var/local/ldb-toolchain/include/c++/11/functional:420
       #16 0x55dacf7cd84d in void std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>::operator()<, void>() /var/local/ldb-toolchain/include/c++/11/functional:503
       #17 0x55dacf7cd84d in void std::__invoke_impl<void, std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&>(std::__invoke_other, std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:61
       #18 0x55dacf7cd84d in std::enable_if<is_invocable_r_v<void, std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&>, void>::type std::__invoke_r<void, std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&>(std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:111
       #19 0x55dacf7cd84d in std::_Function_handler<void (), std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)> >::_M_invoke(std::_Any_data const&) /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:291
       #20 0x55dab81a6070 in std::function<void ()>::operator()() const /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:560
       #21 0x55dab81a6070 in doris::FunctionRunnable::run() /root/doris/be/src/util/threadpool.cpp:46
       #22 0x55dab81a3f88 in doris::ThreadPool::dispatch_thread() /root/doris/be/src/util/threadpool.cpp:529
       #23 0x55dab81a5c25 in void std::__invoke_impl<void, void (doris::ThreadPool::*&)(), doris::ThreadPool*&>(std::__invoke_memfun_deref, void (doris::ThreadPool::*&)(), doris::ThreadPool*&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:74
       #24 0x55dab81a5c25 in std::__invoke_result<void (doris::ThreadPool::*&)(), doris::ThreadPool*&>::type std::__invoke<void (doris::ThreadPool::*&)(), doris::ThreadPool*&>(void (doris::ThreadPool::*&)(), doris::ThreadPool*&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:96
       #25 0x55dab81a5c25 in void std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /var/local/ldb-toolchain/include/c++/11/functional:420
       #26 0x55dab81a5c25 in void std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>::operator()<, void>() /var/local/ldb-toolchain/include/c++/11/functional:503
       #27 0x55dab81a5c25 in void std::__invoke_impl<void, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&>(std::__invoke_other, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:61
       #28 0x55dab81a5c25 in 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*))()>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:111
       #29 0x55dab81a5c25 in std::_Function_handler<void (), std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()> >::_M_invoke(std::_Any_data const&) /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:291
       #30 0x55dab817ea83 in std::function<void ()>::operator()() const /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:560
       #31 0x55dab817ea83 in doris::Thread::supervise_thread(void*) /root/doris/be/src/util/thread.cpp:453
       #32 0x7f7967ed5608 in start_thread /build/glibc-SzIz7B/glibc-2.31/nptl/pthread_create.c:477
       #33 0x7f7967cab132 in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x11f132)
   
   0x6030034fe5e8 is located 8 bytes inside of 32-byte region [0x6030034fe5e0,0x6030034fe600)
   freed by thread T267 (TaskSchedulerTh) here:
       #0 0x55dab54ee767 in operator delete(void*, unsigned long) (/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/doris_be+0xb47a767)
       #1 0x55dab6e4664e in __gnu_cxx::new_allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > >::deallocate(std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*, unsigned long) /var/local/ldb-toolchain/include/c++/11/ext/new_allocator.h:139
       #2 0x55dab6e4664e in std::allocator_traits<std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > > >::deallocate(std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > >&, std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*, unsigned long) /var/local/ldb-toolchain/include/c++/11/bits/alloc_traits.h:492
       #3 0x55dab6e4664e in std::_Vector_base<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >, std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > > >::_M_deallocate(std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*, unsigned long) /var/local/ldb-toolchain/include/c++/11/bits/stl_vector.h:354
       #4 0x55dab6e4664e in void std::vector<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >, std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > > >::_M_realloc_insert<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > >(__gnu_cxx::__normal_iterator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*, std::vector<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >, std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > > > >, std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >&&) /var/local/ldb-toolchain/include/c++/11/bits/vector.tcc:500
       #5 0x55dacf0925f4 in std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >& std::vector<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >, std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > > >::emplace_back<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > >(std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >&&) /var/local/ldb-toolchain/include/c++/11/bits/vector.tcc:121
       #6 0x55dacf07eb55 in doris::vectorized::ScannerContext::return_free_block(std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >) /root/doris/be/src/vec/exec/scan/scanner_context.cpp:141
       #7 0x55dacf0b8a76 in doris::vectorized::VScanNode::get_next(doris::RuntimeState*, doris::vectorized::Block*, bool*) /root/doris/be/src/vec/exec/scan/vscan_node.cpp:220
       #8 0x55dab7a99cac in doris::ExecNode::pull(doris::RuntimeState*, doris::vectorized::Block*, bool*) /root/doris/be/src/exec/exec_node.h:128
       #9 0x55dacf7d9b4d in doris::Status std::__invoke_impl<doris::Status, doris::Status (doris::ExecNode::*&)(doris::RuntimeState*, doris::vectorized::Block*, bool*), doris::vectorized::VScanNode*&, doris::RuntimeState*, doris::vectorized::Block*, bool*>(std::__invoke_memfun_deref, doris::Status (doris::ExecNode::*&)(doris::RuntimeState*, doris::vectorized::Block*, bool*), doris::vectorized::VScanNode*&, doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:74
       #10 0x55dacf7d9b4d in std::__invoke_result<doris::Status (doris::ExecNode::*&)(doris::RuntimeState*, doris::vectorized::Block*, bool*), doris::vectorized::VScanNode*&, doris::RuntimeState*, doris::vectorized::Block*, bool*>::type std::__invoke<doris::Status (doris::ExecNode::*&)(doris::RuntimeState*, doris::vectorized::Block*, bool*), doris::vectorized::VScanNode*&, doris::RuntimeState*, doris::vectorized::Block*, bool*>(doris::Status (doris::ExecNode::*&)(doris::RuntimeState*, doris::vectorized::Block*, bool*), doris::vectorized::VScanNode*&, doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:97
       #11 0x55dacf7d9b4d in doris::Status std::_Bind<doris::Status (doris::ExecNode::*(doris::vectorized::VScanNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>::__call<doris::Status, doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&, 0ul, 1ul, 2ul, 3ul>(std::tuple<doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&>&&, std::_Index_tuple<0ul, 1ul, 2ul, 3ul>) /var/local/ldb-toolchain/include/c++/11/functional:422
       #12 0x55dacf7d9b4d in doris::Status std::_Bind<doris::Status (doris::ExecNode::*(doris::vectorized::VScanNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>::operator()<doris::RuntimeState*, doris::vectorized::Block*, bool*, doris::Status>(doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&) /var/local/ldb-toolchain/include/c++/11/functional:505
       #13 0x55dacf7d9b4d in doris::Status std::__invoke_impl<doris::Status, std::_Bind<doris::Status (doris::ExecNode::*(doris::vectorized::VScanNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>&, doris::RuntimeState*, doris::vectorized::Block*, bool*>(std::__invoke_other, std::_Bind<doris::Status (doris::ExecNode::*(doris::vectorized::VScanNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>&, doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:61
       #14 0x55dacf7d9b4d in std::enable_if<is_invocable_r_v<doris::Status, std::_Bind<doris::Status (doris::ExecNode::*(doris::vectorized::VScanNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>&, doris::RuntimeState*, doris::vectorized::Block*, bool*>, doris::Status>::type std::__invoke_r<doris::Status, std::_Bind<doris::Status (doris::ExecNode::*(doris::vectorized::VScanNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>&, doris::RuntimeState*, doris::vectorized::Block*, bool*>(std::_Bind<doris::Status (doris::ExecNode::*(doris::vectorized::VScanNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>&, doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:116
       #15 0x55dacf7d9b4d in std::_Function_handler<doris::Status (doris::RuntimeState*, doris::vectorized::Block*, bool*), std::_Bind<doris::Status (doris::ExecNode::*(doris::vectorized::VScanNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)> >::_M_invoke(std::_Any_data const&, doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&) /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:292
       #16 0x55dab7a9422d in std::function<doris::Status (doris::RuntimeState*, doris::vectorized::Block*, bool*)>::operator()(doris::RuntimeState*, doris::vectorized::Block*, bool*) const /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:560
       #17 0x55dab7a9422d in doris::ExecNode::get_next_after_projects(doris::RuntimeState*, doris::vectorized::Block*, bool*, std::function<doris::Status (doris::RuntimeState*, doris::vectorized::Block*, bool*)> const&, bool) /root/doris/be/src/exec/exec_node.cpp:586
       #18 0x55dacf7df034 in doris::pipeline::SourceOperator<doris::pipeline::ScanOperatorBuilder>::get_block(doris::RuntimeState*, doris::vectorized::Block*, doris::pipeline::SourceState&) /root/doris/be/src/pipeline/exec/operator.h:400
       #19 0x55dacf7a8aaf in doris::pipeline::PipelineTask::execute(bool*) /root/doris/be/src/pipeline/pipeline_task.cpp:188
       #20 0x55dacf7cb3e6 in doris::pipeline::TaskScheduler::_do_work(unsigned long) /root/doris/be/src/pipeline/task_scheduler.cpp:249
       #21 0x55dacf7cd84d in void std::__invoke_impl<void, void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&>(std::__invoke_memfun_deref, void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:74
       #22 0x55dacf7cd84d in std::__invoke_result<void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&>::type std::__invoke<void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&>(void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:96
       #23 0x55dacf7cd84d in void std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) /var/local/ldb-toolchain/include/c++/11/functional:420
       #24 0x55dacf7cd84d in void std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>::operator()<, void>() /var/local/ldb-toolchain/include/c++/11/functional:503
       #25 0x55dacf7cd84d in void std::__invoke_impl<void, std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&>(std::__invoke_other, std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:61
       #26 0x55dacf7cd84d in std::enable_if<is_invocable_r_v<void, std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&>, void>::type std::__invoke_r<void, std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&>(std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:111
       #27 0x55dacf7cd84d in std::_Function_handler<void (), std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)> >::_M_invoke(std::_Any_data const&) /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:291
       #28 0x55dab81a6070 in std::function<void ()>::operator()() const /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:560
       #29 0x55dab81a6070 in doris::FunctionRunnable::run() /root/doris/be/src/util/threadpool.cpp:46
       #30 0x55dab81a3f88 in doris::ThreadPool::dispatch_thread() /root/doris/be/src/util/threadpool.cpp:529
       #31 0x55dab81a5c25 in void std::__invoke_impl<void, void (doris::ThreadPool::*&)(), doris::ThreadPool*&>(std::__invoke_memfun_deref, void (doris::ThreadPool::*&)(), doris::ThreadPool*&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:74
       #32 0x55dab81a5c25 in std::__invoke_result<void (doris::ThreadPool::*&)(), doris::ThreadPool*&>::type std::__invoke<void (doris::ThreadPool::*&)(), doris::ThreadPool*&>(void (doris::ThreadPool::*&)(), doris::ThreadPool*&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:96
       #33 0x55dab81a5c25 in void std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /var/local/ldb-toolchain/include/c++/11/functional:420
       #34 0x55dab81a5c25 in void std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>::operator()<, void>() /var/local/ldb-toolchain/include/c++/11/functional:503
       #35 0x55dab81a5c25 in void std::__invoke_impl<void, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&>(std::__invoke_other, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:61
       #36 0x55dab81a5c25 in 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*))()>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:111
       #37 0x55dab81a5c25 in std::_Function_handler<void (), std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()> >::_M_invoke(std::_Any_data const&) /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:291
       #38 0x55dab817ea83 in std::function<void ()>::operator()() const /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:560
       #39 0x55dab817ea83 in doris::Thread::supervise_thread(void*) /root/doris/be/src/util/thread.cpp:453
       #40 0x7f7967ed5608 in start_thread /build/glibc-SzIz7B/glibc-2.31/nptl/pthread_create.c:477
   
   previously allocated by thread T281 (TaskSchedulerTh) here:
       #0 0x55dab54ed707 in operator new(unsigned long) (/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/doris_be+0xb479707)
       #1 0x55dab6e46521 in __gnu_cxx::new_allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > >::allocate(unsigned long, void const*) /var/local/ldb-toolchain/include/c++/11/ext/new_allocator.h:121
       #2 0x55dab6e46521 in std::allocator_traits<std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > > >::allocate(std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > >&, unsigned long) /var/local/ldb-toolchain/include/c++/11/bits/alloc_traits.h:460
       #3 0x55dab6e46521 in std::_Vector_base<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >, std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > > >::_M_allocate(unsigned long) /var/local/ldb-toolchain/include/c++/11/bits/stl_vector.h:346
       #4 0x55dab6e46521 in void std::vector<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >, std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > > >::_M_realloc_insert<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > >(__gnu_cxx::__normal_iterator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >*, std::vector<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >, std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > > > >, std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >&&) /var/local/ldb-toolchain/include/c++/11/bits/vector.tcc:440
       #5 0x55dacf0925f4 in std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >& std::vector<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >, std::allocator<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > > >::emplace_back<std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> > >(std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >&&) /var/local/ldb-toolchain/include/c++/11/bits/vector.tcc:121
       #6 0x55dacf081b19 in doris::vectorized::ScannerContext::init() /root/doris/be/src/vec/exec/scan/scanner_context.cpp:94
       #7 0x55dacf0a0c48 in doris::vectorized::VScanNode::_start_scanners(std::__cxx11::list<doris::vectorized::VScanner*, std::allocator<doris::vectorized::VScanner*> > const&) /root/doris/be/src/vec/exec/scan/vscan_node.cpp:280
       #8 0x55dacf0a3950 in doris::vectorized::VScanNode::_prepare_scanners() /root/doris/be/src/vec/exec/scan/vscan_node.cpp:1372
       #9 0x55dacf0fc8b8 in doris::vectorized::VScanNode::alloc_resource(doris::RuntimeState*) /root/doris/be/src/vec/exec/scan/vscan_node.cpp:146
       #10 0x55dacf7de226 in doris::pipeline::StreamingOperator<doris::pipeline::ScanOperatorBuilder>::open(doris::RuntimeState*) /root/doris/be/src/pipeline/exec/operator.h:333
       #11 0x55dacf7997fa in doris::pipeline::PipelineTask::_open() /root/doris/be/src/pipeline/pipeline_task.cpp:115
       #12 0x55dacf7a7612 in doris::pipeline::PipelineTask::execute(bool*) /root/doris/be/src/pipeline/pipeline_task.cpp:144
       #13 0x55dacf7cb3e6 in doris::pipeline::TaskScheduler::_do_work(unsigned long) /root/doris/be/src/pipeline/task_scheduler.cpp:249
       #14 0x55dacf7cd84d in void std::__invoke_impl<void, void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&>(std::__invoke_memfun_deref, void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:74
       #15 0x55dacf7cd84d in std::__invoke_result<void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&>::type std::__invoke<void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&>(void (doris::pipeline::TaskScheduler::*&)(unsigned long), doris::pipeline::TaskScheduler*&, unsigned long&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:96
       #16 0x55dacf7cd84d in void std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) /var/local/ldb-toolchain/include/c++/11/functional:420
       #17 0x55dacf7cd84d in void std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>::operator()<, void>() /var/local/ldb-toolchain/include/c++/11/functional:503
       #18 0x55dacf7cd84d in void std::__invoke_impl<void, std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&>(std::__invoke_other, std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:61
       #19 0x55dacf7cd84d in std::enable_if<is_invocable_r_v<void, std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&>, void>::type std::__invoke_r<void, std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&>(std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:111
       #20 0x55dacf7cd84d in std::_Function_handler<void (), std::_Bind<void (doris::pipeline::TaskScheduler::*(doris::pipeline::TaskScheduler*, unsigned long))(unsigned long)> >::_M_invoke(std::_Any_data const&) /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:291
       #21 0x55dab81a6070 in std::function<void ()>::operator()() const /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:560
       #22 0x55dab81a6070 in doris::FunctionRunnable::run() /root/doris/be/src/util/threadpool.cpp:46
       #23 0x55dab81a3f88 in doris::ThreadPool::dispatch_thread() /root/doris/be/src/util/threadpool.cpp:529
       #24 0x55dab81a5c25 in void std::__invoke_impl<void, void (doris::ThreadPool::*&)(), doris::ThreadPool*&>(std::__invoke_memfun_deref, void (doris::ThreadPool::*&)(), doris::ThreadPool*&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:74
       #25 0x55dab81a5c25 in std::__invoke_result<void (doris::ThreadPool::*&)(), doris::ThreadPool*&>::type std::__invoke<void (doris::ThreadPool::*&)(), doris::ThreadPool*&>(void (doris::ThreadPool::*&)(), doris::ThreadPool*&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:96
       #26 0x55dab81a5c25 in void std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /var/local/ldb-toolchain/include/c++/11/functional:420
       #27 0x55dab81a5c25 in void std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>::operator()<, void>() /var/local/ldb-toolchain/include/c++/11/functional:503
       #28 0x55dab81a5c25 in void std::__invoke_impl<void, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&>(std::__invoke_other, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:61
       #29 0x55dab81a5c25 in 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*))()>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:111
       #30 0x55dab81a5c25 in std::_Function_handler<void (), std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()> >::_M_invoke(std::_Any_data const&) /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:291
       #31 0x55dab817ea83 in std::function<void ()>::operator()() const /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:560
       #32 0x55dab817ea83 in doris::Thread::supervise_thread(void*) /root/doris/be/src/util/thread.cpp:453
       #33 0x7f7967ed5608 in start_thread /build/glibc-SzIz7B/glibc-2.31/nptl/pthread_create.c:477
   
   Thread T278 (TaskSchedulerTh) created by T0 here:
       #0 0x55dab5490061 in __interceptor_pthread_create (/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/doris_be+0xb41c061)
       #1 0x55dab817aac9 in doris::Thread::start_thread(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<void ()> const&, unsigned long, scoped_refptr<doris::Thread>*) /root/doris/be/src/util/thread.cpp:407
       #2 0x55dab8191fce in doris::Status doris::Thread::create<void (doris::ThreadPool::*)(), doris::ThreadPool*>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, void (doris::ThreadPool::* const&)(), doris::ThreadPool* const&, scoped_refptr<doris::Thread>*) /root/doris/be/src/util/thread.h:57
       #3 0x55dab8191fce in doris::ThreadPool::create_thread() /root/doris/be/src/util/threadpool.cpp:598
       #4 0x55dab819ba1d in doris::ThreadPool::init() /root/doris/be/src/util/threadpool.cpp:257
       #5 0x55dacf7c283c in doris::Status doris::ThreadPoolBuilder::build<doris::ThreadPool>(std::unique_ptr<doris::ThreadPool, std::default_delete<doris::ThreadPool> >*) const /root/doris/be/src/util/threadpool.h:114
       #6 0x55dacf7c283c in doris::pipeline::TaskScheduler::start() /root/doris/be/src/pipeline/task_scheduler.cpp:200
       #7 0x55dab786e5f5 in doris::ExecEnv::init_pipeline_task_scheduler() /root/doris/be/src/runtime/exec_env_init.cpp:173
       #8 0x55dab788425c in doris::ExecEnv::_init(std::vector<doris::StorePath, std::allocator<doris::StorePath> > const&) /root/doris/be/src/runtime/exec_env_init.cpp:123
       #9 0x55dab7886560 in doris::ExecEnv::init(doris::ExecEnv*, std::vector<doris::StorePath, std::allocator<doris::StorePath> > const&) /root/doris/be/src/runtime/exec_env_init.cpp:73
       #10 0x55dab553d284 in main /root/doris/be/src/service/doris_main.cpp:436
       #11 0x7f7967bb0082 in __libc_start_main ../csu/libc-start.c:308
   
   Thread T267 (TaskSchedulerTh) created by T0 here:
       #0 0x55dab5490061 in __interceptor_pthread_create (/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/doris_be+0xb41c061)
       #1 0x55dab817aac9 in doris::Thread::start_thread(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<void ()> const&, unsigned long, scoped_refptr<doris::Thread>*) /root/doris/be/src/util/thread.cpp:407
       #2 0x55dab8191fce in doris::Status doris::Thread::create<void (doris::ThreadPool::*)(), doris::ThreadPool*>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, void (doris::ThreadPool::* const&)(), doris::ThreadPool* const&, scoped_refptr<doris::Thread>*) /root/doris/be/src/util/thread.h:57
       #3 0x55dab8191fce in doris::ThreadPool::create_thread() /root/doris/be/src/util/threadpool.cpp:598
       #4 0x55dab819ba1d in doris::ThreadPool::init() /root/doris/be/src/util/threadpool.cpp:257
       #5 0x55dacf7c283c in doris::Status doris::ThreadPoolBuilder::build<doris::ThreadPool>(std::unique_ptr<doris::ThreadPool, std::default_delete<doris::ThreadPool> >*) const /root/doris/be/src/util/threadpool.h:114
       #6 0x55dacf7c283c in doris::pipeline::TaskScheduler::start() /root/doris/be/src/pipeline/task_scheduler.cpp:200
       #7 0x55dab786e5f5 in doris::ExecEnv::init_pipeline_task_scheduler() /root/doris/be/src/runtime/exec_env_init.cpp:173
       #8 0x55dab788425c in doris::ExecEnv::_init(std::vector<doris::StorePath, std::allocator<doris::StorePath> > const&) /root/doris/be/src/runtime/exec_env_init.cpp:123
       #9 0x55dab7886560 in doris::ExecEnv::init(doris::ExecEnv*, std::vector<doris::StorePath, std::allocator<doris::StorePath> > const&) /root/doris/be/src/runtime/exec_env_init.cpp:73
       #10 0x55dab553d284 in main /root/doris/be/src/service/doris_main.cpp:436
       #11 0x7f7967bb0082 in __libc_start_main ../csu/libc-start.c:308
   
   Thread T281 (TaskSchedulerTh) created by T0 here:
       #0 0x55dab5490061 in __interceptor_pthread_create (/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/doris_be+0xb41c061)
       #1 0x55dab817aac9 in doris::Thread::start_thread(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<void ()> const&, unsigned long, scoped_refptr<doris::Thread>*) /root/doris/be/src/util/thread.cpp:407
       #2 0x55dab8191fce in doris::Status doris::Thread::create<void (doris::ThreadPool::*)(), doris::ThreadPool*>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, void (doris::ThreadPool::* const&)(), doris::ThreadPool* const&, scoped_refptr<doris::Thread>*) /root/doris/be/src/util/thread.h:57
       #3 0x55dab8191fce in doris::ThreadPool::create_thread() /root/doris/be/src/util/threadpool.cpp:598
       #4 0x55dab819ba1d in doris::ThreadPool::init() /root/doris/be/src/util/threadpool.cpp:257
       #5 0x55dacf7c283c in doris::Status doris::ThreadPoolBuilder::build<doris::ThreadPool>(std::unique_ptr<doris::ThreadPool, std::default_delete<doris::ThreadPool> >*) const /root/doris/be/src/util/threadpool.h:114
       #6 0x55dacf7c283c in doris::pipeline::TaskScheduler::start() /root/doris/be/src/pipeline/task_scheduler.cpp:200
       #7 0x55dab786e5f5 in doris::ExecEnv::init_pipeline_task_scheduler() /root/doris/be/src/runtime/exec_env_init.cpp:173
       #8 0x55dab788425c in doris::ExecEnv::_init(std::vector<doris::StorePath, std::allocator<doris::StorePath> > const&) /root/doris/be/src/runtime/exec_env_init.cpp:123
       #9 0x55dab7886560 in doris::ExecEnv::init(doris::ExecEnv*, std::vector<doris::StorePath, std::allocator<doris::StorePath> > const&) /root/doris/be/src/runtime/exec_env_init.cpp:73
       #10 0x55dab553d284 in main /root/doris/be/src/service/doris_main.cpp:436
       #11 0x7f7967bb0082 in __libc_start_main ../csu/libc-start.c:308
   
   SUMMARY: AddressSanitizer: heap-use-after-free /var/local/ldb-toolchain/include/c++/11/bits/unique_ptr.h:360 in std::unique_ptr<doris::vectorized::Block, std::default_delete<doris::vectorized::Block> >::~unique_ptr()
   Shadow bytes around the buggy address:
     0x0c0680697c60: fa fa fd fd fd fa fa fa fd fd fd fa fa fa fd fd
     0x0c0680697c70: fd fd fa fa 00 00 00 00 fa fa fd fd fd fa fa fa
     0x0c0680697c80: fa fa fa fa fa fa fa fa fa fa fa fa fd fd fd fa
     0x0c0680697c90: fa fa fd fd fd fa fa fa fa fa fa fa fa fa 00 00
     0x0c0680697ca0: 00 fa fa fa fa fa fa fa fa fa fd fd fd fa fa fa
   =>0x0c0680697cb0: 00 00 00 fa fa fa fd fd fd fd fa fa fd[fd]fd fd
     0x0c0680697cc0: fa fa 00 00 00 fa fa fa 00 00 00 00 fa fa 00 00
     0x0c0680697cd0: 00 fa fa fa fd fd fd fa fa fa fd fd fd fd fa fa
     0x0c0680697ce0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
     0x0c0680697cf0: fa fa fa fa fa fa fa fa 00 00 00 00 fa fa 00 00
     0x0c0680697d00: 00 fa fa fa fa fa fa fa fa fa 00 00 00 fa fa fa
   Shadow byte legend (one shadow byte represents 8 application bytes):
     Addressable:           00
     Partially addressable: 01 02 03 04 05 06 07 
     Heap left redzone:       fa
     Freed heap region:       fd
     Stack left redzone:      f1
     Stack mid redzone:       f2
     Stack right redzone:     f3
     Stack after return:      f5
     Stack use after scope:   f8
     Global redzone:          f9
     Global init order:       f6
     Poisoned by user:        f7
     Container overflow:      fc
     Array cookie:            ac
     Intra object redzone:    bb
     ASan internal:           fe
     Left alloca redzone:     ca
     Right alloca redzone:    cb
     Shadow gap:              cc
   ==1715262==ABORTING
   start time: Sun 16 Apr 2023 12:00:42 AM CST
   WARNING: Logging before InitGoogleLogging() is written to STDERR
   I0416 00:00:42.706631 1730339 doris_main.cpp:322] enable_fuzzy_mode is true, set fuzzy configs
   SLF4J: Class path contains multiple SLF4J bindings.
   SLF4J: Found binding in [jar:file:/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/hadoop_hdfs/common/lib/slf4j-reload4j-1.7.36.jar!/org/slf4j/impl/StaticLoggerBinder.class]
   SLF4J: Found binding in [jar:file:/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/java-udf-jar-with-dependencies.jar!/org/slf4j/impl/StaticLoggerBinder.class]
   SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
   SLF4J: Actual binding is of type [org.slf4j.impl.Reload4jLoggerFactory]
   =================================================================
   ==1730339==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7f690a340c48 at pc 0x55fb75ff8b17 bp 0x7f690a340c10 sp 0x7f690a3403b8
   WRITE of size 24 at 0x7f690a340c48 thread T792 (TaskWorkerPool.)
       #0 0x55fb75ff8b16 in __interceptor_sigaltstack.part.0 (/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/doris_be+0xb417b16)
       #1 0x55fb7605e8bf in __asan::PlatformUnpoisonStacks() (/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/doris_be+0xb47d8bf)
       #2 0x55fb76064224 in __asan_handle_no_return (/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/doris_be+0xb483224)
       #3 0x55fb793f6d02 in apache::thrift::protocol::TProtocol::decrementOutputRecursionDepth() /var/local/thirdparty/installed/include/thrift/protocol/TProtocol.h:541
       #4 0x55fb793f6d02 in apache::thrift::protocol::TOutputRecursionTracker::~TOutputRecursionTracker() /var/local/thirdparty/installed/include/thrift/protocol/TProtocol.h:636
       #5 0x55fb793f6d02 in doris::TTabletInfo::write(apache::thrift::protocol::TProtocol*) const /root/doris/gensrc/build/gen_cpp/MasterService_types.cpp:465
       #6 0x55fb793efdc4 in doris::TTablet::write(apache::thrift::protocol::TProtocol*) const /root/doris/gensrc/build/gen_cpp/MasterService_types.cpp:1193
       #7 0x55fb793f7e64 in doris::TReportRequest::write(apache::thrift::protocol::TProtocol*) const /root/doris/gensrc/build/gen_cpp/MasterService_types.cpp:1908
       #8 0x55fb791538a7 in doris::FrontendService_report_pargs::write(apache::thrift::protocol::TProtocol*) const /root/doris/gensrc/build/gen_cpp/FrontendService.cpp:1391
       #9 0x55fb79185830 in doris::FrontendServiceClient::send_report(doris::TReportRequest const&) /root/doris/gensrc/build/gen_cpp/FrontendService.cpp:5998
       #10 0x55fb791fd2ec in doris::FrontendServiceClient::report(doris::TMasterResult&, doris::TReportRequest const&) /root/doris/gensrc/build/gen_cpp/FrontendService.cpp:5987
       #11 0x55fb7785473c in doris::MasterServerClient::report(doris::TReportRequest const&, doris::TMasterResult*) /root/doris/be/src/agent/utils.cpp:108
       #12 0x55fb777ee004 in doris::TaskWorkerPool::_handle_report(doris::TReportRequest const&, doris::TaskWorkerPool::ReportType) /root/doris/be/src/agent/task_worker_pool.cpp:1667
       #13 0x55fb777f4d85 in doris::TaskWorkerPool::_report_tablet_worker_thread_callback() /root/doris/be/src/agent/task_worker_pool.cpp:1378
       #14 0x55fb778345d1 in void std::__invoke_impl<void, void (doris::TaskWorkerPool::*&)(), doris::TaskWorkerPool*&>(std::__invoke_memfun_deref, void (doris::TaskWorkerPool::*&)(), doris::TaskWorkerPool*&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:74
       #15 0x55fb778345d1 in std::enable_if<is_invocable_r_v<void, void (doris::TaskWorkerPool::*&)(), doris::TaskWorkerPool*&>, void>::type std::__invoke_r<void, void (doris::TaskWorkerPool::*&)(), doris::TaskWorkerPool*&>(void (doris::TaskWorkerPool::*&)(), doris::TaskWorkerPool*&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:111
       #16 0x55fb778345d1 in void std::_Bind_result<void, void (doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /var/local/ldb-toolchain/include/c++/11/functional:570
       #17 0x55fb778345d1 in void std::_Bind_result<void, void (doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>::operator()<>() /var/local/ldb-toolchain/include/c++/11/functional:629
       #18 0x55fb778345d1 in void std::__invoke_impl<void, std::_Bind_result<void, void (doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>&>(std::__invoke_other, std::_Bind_result<void, void (doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:61
       #19 0x55fb778345d1 in std::enable_if<is_invocable_r_v<void, std::_Bind_result<void, void (doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>&>, void>::type std::__invoke_r<void, std::_Bind_result<void, void (doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>&>(std::_Bind_result<void, void (doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:111
       #20 0x55fb778345d1 in std::_Function_handler<void (), std::_Bind_result<void, void (doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()> >::_M_invoke(std::_Any_data const&) /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:291
       #21 0x55fb78d13070 in std::function<void ()>::operator()() const /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:560
       #22 0x55fb78d13070 in doris::FunctionRunnable::run() /root/doris/be/src/util/threadpool.cpp:46
       #23 0x55fb78d10f88 in doris::ThreadPool::dispatch_thread() /root/doris/be/src/util/threadpool.cpp:529
       #24 0x55fb78d12c25 in void std::__invoke_impl<void, void (doris::ThreadPool::*&)(), doris::ThreadPool*&>(std::__invoke_memfun_deref, void (doris::ThreadPool::*&)(), doris::ThreadPool*&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:74
       #25 0x55fb78d12c25 in std::__invoke_result<void (doris::ThreadPool::*&)(), doris::ThreadPool*&>::type std::__invoke<void (doris::ThreadPool::*&)(), doris::ThreadPool*&>(void (doris::ThreadPool::*&)(), doris::ThreadPool*&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:96
       #26 0x55fb78d12c25 in void std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /var/local/ldb-toolchain/include/c++/11/functional:420
       #27 0x55fb78d12c25 in void std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>::operator()<, void>() /var/local/ldb-toolchain/include/c++/11/functional:503
       #28 0x55fb78d12c25 in void std::__invoke_impl<void, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&>(std::__invoke_other, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:61
       #29 0x55fb78d12c25 in 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*))()>&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:111
       #30 0x55fb78d12c25 in std::_Function_handler<void (), std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()> >::_M_invoke(std::_Any_data const&) /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:291
       #31 0x55fb78ceba83 in std::function<void ()>::operator()() const /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:560
       #32 0x55fb78ceba83 in doris::Thread::supervise_thread(void*) /root/doris/be/src/util/thread.cpp:453
       #33 0x7f6b1006d608 in start_thread /build/glibc-SzIz7B/glibc-2.31/nptl/pthread_create.c:477
       #34 0x7f6b0fe43132 in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x11f132)
   
   Address 0x7f690a340c48 is located in stack of thread T792 (TaskWorkerPool.) at offset 40 in frame
       #0 0x55fb778569bf in apache::thrift::protocol::TVirtualProtocol<apache::thrift::protocol::TBinaryProtocolT<apache::thrift::transport::TTransport, apache::thrift::protocol::TNetworkBigEndian>, apache::thrift::protocol::TProtocolDefaults>::writeI64_virt(long) /var/local/thirdparty/installed/include/thrift/protocol/TVirtualProtocol.h:380
   
     This frame has 1 object(s):
       [32, 40) 'net' <== Memory access at offset 40 overflows this variable
   HINT: this may be a false positive if your program uses some custom stack unwind mechanism, swapcontext or vfork
         (longjmp and C++ exceptions *are* supported)
   Thread T792 (TaskWorkerPool.) created by T0 here:
       #0 0x55fb75ffd061 in __interceptor_pthread_create (/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/doris_be+0xb41c061)
       #1 0x55fb78ce7ac9 in doris::Thread::start_thread(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<void ()> const&, unsigned long, scoped_refptr<doris::Thread>*) /root/doris/be/src/util/thread.cpp:407
       #2 0x55fb78cfefce in doris::Status doris::Thread::create<void (doris::ThreadPool::*)(), doris::ThreadPool*>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, void (doris::ThreadPool::* const&)(), doris::ThreadPool* const&, scoped_refptr<doris::Thread>*) /root/doris/be/src/util/thread.h:57
       #3 0x55fb78cfefce in doris::ThreadPool::create_thread() /root/doris/be/src/util/threadpool.cpp:598
       #4 0x55fb78d08a1d in doris::ThreadPool::init() /root/doris/be/src/util/threadpool.cpp:257
       #5 0x55fb777df360 in doris::Status doris::ThreadPoolBuilder::build<doris::ThreadPool>(std::unique_ptr<doris::ThreadPool, std::default_delete<doris::ThreadPool> >*) const /root/doris/be/src/util/threadpool.h:114
       #6 0x55fb777df360 in doris::TaskWorkerPool::start() /root/doris/be/src/agent/task_worker_pool.cpp:222
       #7 0x55fb7890790a in doris::AgentServer::AgentServer(doris::ExecEnv*, doris::TMasterInfo const&) /root/doris/be/src/agent/agent_server.cpp:96
       #8 0x55fb788e1f2b in doris::BackendService::BackendService(doris::ExecEnv*) /root/doris/be/src/service/backend_service.cpp:68
       #9 0x55fb788ebfeb in doris::BackendService::create_service(doris::ExecEnv*, int, doris::ThriftServer**) /root/doris/be/src/service/backend_service.cpp:71
       #10 0x55fb760aa793 in main /root/doris/be/src/service/doris_main.cpp:462
       #11 0x7f6b0fd48082 in __libc_start_main ../csu/libc-start.c:308
   
   SUMMARY: AddressSanitizer: stack-buffer-overflow (/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster2/be/lib/doris_be+0xb417b16) in __interceptor_sigaltstack.part.0
   Shadow bytes around the buggy address:
     0x0feda1460130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     0x0feda1460140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     0x0feda1460150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     0x0feda1460160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     0x0feda1460170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
   =>0x0feda1460180: 00 00 00 00 f1 f1 f1 f1 00[f3]f3 f3 00 00 00 00
     0x0feda1460190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     0x0feda14601a0: f1 f1 f1 f1 f1 f1 01 f2 00 f2 f2 f2 00 f2 f2 f2
     0x0feda14601b0: 00 f2 f2 f2 00 f2 f2 f2 00 f3 f3 f3 00 00 00 00
     0x0feda14601c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     0x0feda14601d0: f1 f1 f1 f1 f1 f1 01 f2 00 f2 f2 f2 00 f2 f2 f2
   Shadow byte legend (one shadow byte represents 8 application bytes):
     Addressable:           00
     Partially addressable: 01 02 03 04 05 06 07 
     Heap left redzone:       fa
     Freed heap region:       fd
     Stack left redzone:      f1
     Stack mid redzone:       f2
     Stack right redzone:     f3
     Stack after return:      f5
     Stack use after scope:   f8
     Global redzone:          f9
     Global init order:       f6
     Poisoned by user:        f7
     Container overflow:      fc
     Array cookie:            ac
     Intra object redzone:    bb
     ASan internal:           fe
     Left alloca redzone:     ca
     Right alloca redzone:    cb
     Shadow gap:              cc
   ==1730339==ABORTING
   ```
   
   ### What You Expected?
   
   Run normally.
   
   ### How to Reproduce?
   
   Maybe run p0 several times.
   
   ### Anything Else?
   
   _No response_
   
   ### Are you willing to submit PR?
   
   - [ ] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
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.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


[GitHub] [doris] TangSiyang2001 commented on issue #18700: [Bug] dangling pointer in scanner context

Posted by "TangSiyang2001 (via GitHub)" <gi...@apache.org>.
TangSiyang2001 commented on issue #18700:
URL: https://github.com/apache/doris/issues/18700#issuecomment-1510191275

   resolved by [PR#18701](https://github.com/apache/doris/pull/18701), data race at `_free_blocks`.


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


[GitHub] [doris] TangSiyang2001 closed issue #18700: [Bug] dangling pointer in scanner context

Posted by "TangSiyang2001 (via GitHub)" <gi...@apache.org>.
TangSiyang2001 closed issue #18700: [Bug] dangling pointer in scanner context
URL: https://github.com/apache/doris/issues/18700


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