eldenmoon opened a new issue, #10638: URL: https://github.com/apache/doris/issues/10638
### Search before asking - [X] I had searched in the [issues](https://github.com/apache/incubator-doris/issues?q=is%3Aissue) and found no similar issues. ### Version master ### What's Wrong? ================================================================= ==120598==ERROR: AddressSanitizer: heap-use-after-free on address 0x603000700a08 at pc 0x5605ae18ada7 bp 0x7fb76fe69d10 sp 0x7fb76fe69d00 READ of size 8 at 0x603000700a08 thread T411 #0 0x5605ae18ada6 in COW<doris::vectorized::IColumn>::intrusive_ptr<doris::vectorized::IColumn const>::operator*() const & /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/common/cow.h:206 #1 0x5605ae18a041 in COW<doris::vectorized::IColumn>::chameleon_ptr<doris::vectorized::IColumn>::operator*() const /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/common/cow.h:350 #2 0x5605b00d5bec in doris::vectorized::ColumnArray::get_offsets() const /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/columns/column_array.h:126 #3 0x5605b00d5bec in doris::vectorized::DataTypeArray::to_string[abi:cxx11](doris::vectorized::IColumn const&, unsigned long) const /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/data_types/data_type_array.cpp:116 #4 0x5605b0101a1e in doris::vectorized::DataTypeNullable::to_string[abi:cxx11](doris::vectorized::IColumn const&, unsigned long) const /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/data_types/data_type_nullable.cpp:52 #5 0x5605b00bc609 in doris::vectorized::ColumnWithTypeAndName::to_string[abi:cxx11](unsigned long) const /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/core/column_with_type_and_name.cpp:70 #6 0x5605b335d3f0 in doris::DeltaWriter::write(doris::vectorized::Block const*, std::vector<int, std::allocator<int> > const&) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/olap/delta_writer.cpp:206 #7 0x5605af20262d in doris::Status doris::TabletsChannel::add_batch<doris::PTabletWriterAddBlockRequest, doris::PTabletWriterAddBlockResult>(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/runtime/tablets_channel.h:226 #8 0x5605af1fe7e5 in doris::Status doris::LoadChannel::add_batch<doris::PTabletWriterAddBlockRequest, doris::PTabletWriterAddBlockResult>(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/runtime/load_channel.h:150 #9 0x5605af1f8087 in doris::Status doris::LoadChannelMgr::add_batch<doris::PTabletWriterAddBlockRequest, doris::PTabletWriterAddBlockResult>(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/runtime/load_channel_mgr.h:137 #10 0x5605af1dc0b8 in operator() /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/service/internal_service.cpp:249 #11 0x5605af1e814d in __invoke_impl<void, doris::PInternalServiceImpl::_tablet_writer_add_block(google::protobuf::RpcController*, const doris::PTabletWriterAddBlockRequest*, doris::PTabletWriterAddBlockResult*, google::protobuf::Closure*)::<lambda()>&> /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:61 #12 0x5605af1e7c35 in __invoke_r<void, doris::PInternalServiceImpl::_tablet_writer_add_block(google::protobuf::RpcController*, const doris::PTabletWriterAddBlockRequest*, doris::PTabletWriterAddBlockResult*, google::protobuf::Closure*)::<lambda()>&> /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:111 #13 0x5605af1e76b9 in _M_invoke /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_function.h:291 #14 0x5605aed7ad27 in std::function<void ()>::operator()() const /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_function.h:560 #15 0x5605aed75c44 in doris::PriorityThreadPool::work_thread(int) (/mnt/disk/lihangyu/eldenmoon/selectdb/test_env/be/lib/doris-be+0x6912c44) #16 0x5605aed9b051 in void std::__invoke_impl<void, void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&>(std::__invoke_memfun_deref, void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:74 #17 0x5605aed9acd1 in std::__invoke_result<void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&>::type std::__invoke<void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&>(void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:96 #18 0x5605aed9ac06 in decltype (__invoke((*this)._M_pmf, (forward<doris::PriorityThreadPool*&>)({parm#1}), (forward<int&>)({parm#1}))) std::_Mem_fn_base<void (doris::PriorityThreadPool::*)(int), true>::operator()<doris::PriorityThreadPool*&, int&>(doris::PriorityThreadPool*&, int&) const /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/functional:131 #19 0x5605aed9ab14 in void std::__invoke_impl<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&>(std::__invoke_other, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:61 #20 0x5605aed9a9dc in std::enable_if<is_invocable_r_v<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&>, void>::type std::__invoke_r<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&>(std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:111 #21 0x5605aed9a7d6 in void std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/functional:570 #22 0x5605aed9a4a4 in void std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>::operator()<>() /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/functional:629 #23 0x5605aed9a2cd in void std::__invoke_impl<void, std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>>(std::__invoke_other, std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>&&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:61 #24 0x5605aed9a21b in std::__invoke_result<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>>::type std::__invoke<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>>(std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>&&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:96 #25 0x5605aed98fab in void std::thread::_Invoker<std::tuple<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_thread.h:253 #26 0x5605aed960d9 in std::thread::_Invoker<std::tuple<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)> > >::operator()() /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_thread.h:260 #27 0x5605aed9579b in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)> > > >::_M_run() /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_thread.h:211 #28 0x5605b6eadc5f in execute_native_thread_routine (/mnt/disk/lihangyu/eldenmoon/selectdb/test_env/be/lib/doris-be+0xea4ac5f) #29 0x7fb8245e2ea4 in start_thread (/lib64/libpthread.so.0+0x7ea4) #30 0x7fb8248f5b0c in clone (/lib64/libc.so.6+0xfeb0c) 0x603000700a08 is located 24 bytes inside of 32-byte region [0x6030007009f0,0x603000700a10) freed by thread T411 here: #0 0x5605adcc7f47 in operator delete(void*, unsigned long) (/mnt/disk/lihangyu/eldenmoon/selectdb/test_env/be/lib/doris-be+0x5864f47) #1 0x5605b2af53f0 in doris::vectorized::ColumnArray::~ColumnArray() /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/columns/column_array.h:36 #2 0x5605ae195a42 in COW<doris::vectorized::IColumn>::release_ref() /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/common/cow.h:109 #3 0x5605ae1872c1 in COW<doris::vectorized::IColumn>::intrusive_ptr<doris::vectorized::IColumn const>::~intrusive_ptr() /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/common/cow.h:136 #4 0x5605ae17d8c9 in COW<doris::vectorized::IColumn>::immutable_ptr<doris::vectorized::IColumn>::~immutable_ptr() /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/common/cow.h:257 #5 0x5605b00d5bb6 in doris::vectorized::DataTypeArray::to_string[abi:cxx11](doris::vectorized::IColumn const&, unsigned long) const /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/data_types/data_type_array.cpp:115 #6 0x5605b0101a1e in doris::vectorized::DataTypeNullable::to_string[abi:cxx11](doris::vectorized::IColumn const&, unsigned long) const /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/data_types/data_type_nullable.cpp:52 #7 0x5605b00bc609 in doris::vectorized::ColumnWithTypeAndName::to_string[abi:cxx11](unsigned long) const /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/core/column_with_type_and_name.cpp:70 #8 0x5605b335d3f0 in doris::DeltaWriter::write(doris::vectorized::Block const*, std::vector<int, std::allocator<int> > const&) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/olap/delta_writer.cpp:206 #9 0x5605af20262d in doris::Status doris::TabletsChannel::add_batch<doris::PTabletWriterAddBlockRequest, doris::PTabletWriterAddBlockResult>(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/runtime/tablets_channel.h:226 #10 0x5605af1fe7e5 in doris::Status doris::LoadChannel::add_batch<doris::PTabletWriterAddBlockRequest, doris::PTabletWriterAddBlockResult>(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/runtime/load_channel.h:150 #11 0x5605af1f8087 in doris::Status doris::LoadChannelMgr::add_batch<doris::PTabletWriterAddBlockRequest, doris::PTabletWriterAddBlockResult>(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/runtime/load_channel_mgr.h:137 #12 0x5605af1dc0b8 in operator() /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/service/internal_service.cpp:249 #13 0x5605af1e814d in __invoke_impl<void, doris::PInternalServiceImpl::_tablet_writer_add_block(google::protobuf::RpcController*, const doris::PTabletWriterAddBlockRequest*, doris::PTabletWriterAddBlockResult*, google::protobuf::Closure*)::<lambda()>&> /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:61 #14 0x5605af1e7c35 in __invoke_r<void, doris::PInternalServiceImpl::_tablet_writer_add_block(google::protobuf::RpcController*, const doris::PTabletWriterAddBlockRequest*, doris::PTabletWriterAddBlockResult*, google::protobuf::Closure*)::<lambda()>&> /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:111 #15 0x5605af1e76b9 in _M_invoke /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_function.h:291 #16 0x5605aed7ad27 in std::function<void ()>::operator()() const /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_function.h:560 #17 0x5605aed75c44 in doris::PriorityThreadPool::work_thread(int) (/mnt/disk/lihangyu/eldenmoon/selectdb/test_env/be/lib/doris-be+0x6912c44) #18 0x5605aed9b051 in void std::__invoke_impl<void, void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&>(std::__invoke_memfun_deref, void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:74 #19 0x5605aed9acd1 in std::__invoke_result<void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&>::type std::__invoke<void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&>(void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:96 #20 0x5605aed9ac06 in decltype (__invoke((*this)._M_pmf, (forward<doris::PriorityThreadPool*&>)({parm#1}), (forward<int&>)({parm#1}))) std::_Mem_fn_base<void (doris::PriorityThreadPool::*)(int), true>::operator()<doris::PriorityThreadPool*&, int&>(doris::PriorityThreadPool*&, int&) const /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/functional:131 #21 0x5605aed9ab14 in void std::__invoke_impl<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&>(std::__invoke_other, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:61 #22 0x5605aed9a9dc in std::enable_if<is_invocable_r_v<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&>, void>::type std::__invoke_r<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&>(std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:111 #23 0x5605aed9a7d6 in void std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/functional:570 #24 0x5605aed9a4a4 in void std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>::operator()<>() /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/functional:629 #25 0x5605aed9a2cd in void std::__invoke_impl<void, std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>>(std::__invoke_other, std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>&&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:61 #26 0x5605aed9a21b in std::__invoke_result<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>>::type std::__invoke<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>>(std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>&&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:96 #27 0x5605aed98fab in void std::thread::_Invoker<std::tuple<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_thread.h:253 #28 0x5605aed960d9 in std::thread::_Invoker<std::tuple<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)> > >::operator()() /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_thread.h:260 #29 0x5605aed9579b in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)> > > >::_M_run() /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_thread.h:211 previously allocated by thread T411 here: #0 0x5605adcc6ee7 in operator new(unsigned long) (/mnt/disk/lihangyu/eldenmoon/selectdb/test_env/be/lib/doris-be+0x5863ee7) #1 0x5605b00689f0 in COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::ColumnArray> COWHelper<doris::vectorized::IColumn, doris::vectorized::ColumnArray>::create<COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>, COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn> >(COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&&, COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&&) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/common/cow.h:413 #2 0x5605b005c733 in COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::ColumnArray> doris::vectorized::ColumnArray::create<COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>, COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>, void>(COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&&, COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&&) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/columns/column_array.h:66 #3 0x5605b005a09d in doris::vectorized::ColumnArray::create(COW<doris::vectorized::IColumn>::immutable_ptr<doris::vectorized::IColumn> const&, COW<doris::vectorized::IColumn>::immutable_ptr<doris::vectorized::IColumn> const&) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/columns/column_array.h:55 #4 0x5605b2ad8dc0 in doris::vectorized::ColumnArray::convert_to_full_column_if_const() const /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/columns/column_array.cpp:299 #5 0x5605b00d5b87 in doris::vectorized::DataTypeArray::to_string[abi:cxx11](doris::vectorized::IColumn const&, unsigned long) const /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/data_types/data_type_array.cpp:115 #6 0x5605b0101a1e in doris::vectorized::DataTypeNullable::to_string[abi:cxx11](doris::vectorized::IColumn const&, unsigned long) const /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/data_types/data_type_nullable.cpp:52 #7 0x5605b00bc609 in doris::vectorized::ColumnWithTypeAndName::to_string[abi:cxx11](unsigned long) const /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/core/column_with_type_and_name.cpp:70 #8 0x5605b335d3f0 in doris::DeltaWriter::write(doris::vectorized::Block const*, std::vector<int, std::allocator<int> > const&) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/olap/delta_writer.cpp:206 #9 0x5605af20262d in doris::Status doris::TabletsChannel::add_batch<doris::PTabletWriterAddBlockRequest, doris::PTabletWriterAddBlockResult>(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/runtime/tablets_channel.h:226 #10 0x5605af1fe7e5 in doris::Status doris::LoadChannel::add_batch<doris::PTabletWriterAddBlockRequest, doris::PTabletWriterAddBlockResult>(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/runtime/load_channel.h:150 #11 0x5605af1f8087 in doris::Status doris::LoadChannelMgr::add_batch<doris::PTabletWriterAddBlockRequest, doris::PTabletWriterAddBlockResult>(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/runtime/load_channel_mgr.h:137 #12 0x5605af1dc0b8 in operator() /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/service/internal_service.cpp:249 #13 0x5605af1e814d in __invoke_impl<void, doris::PInternalServiceImpl::_tablet_writer_add_block(google::protobuf::RpcController*, const doris::PTabletWriterAddBlockRequest*, doris::PTabletWriterAddBlockResult*, google::protobuf::Closure*)::<lambda()>&> /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:61 #14 0x5605af1e7c35 in __invoke_r<void, doris::PInternalServiceImpl::_tablet_writer_add_block(google::protobuf::RpcController*, const doris::PTabletWriterAddBlockRequest*, doris::PTabletWriterAddBlockResult*, google::protobuf::Closure*)::<lambda()>&> /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:111 #15 0x5605af1e76b9 in _M_invoke /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_function.h:291 #16 0x5605aed7ad27 in std::function<void ()>::operator()() const /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_function.h:560 #17 0x5605aed75c44 in doris::PriorityThreadPool::work_thread(int) (/mnt/disk/lihangyu/eldenmoon/selectdb/test_env/be/lib/doris-be+0x6912c44) #18 0x5605aed9b051 in void std::__invoke_impl<void, void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&>(std::__invoke_memfun_deref, void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:74 #19 0x5605aed9acd1 in std::__invoke_result<void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&>::type std::__invoke<void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&>(void (doris::PriorityThreadPool::* const&)(int), doris::PriorityThreadPool*&, int&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:96 #20 0x5605aed9ac06 in decltype (__invoke((*this)._M_pmf, (forward<doris::PriorityThreadPool*&>)({parm#1}), (forward<int&>)({parm#1}))) std::_Mem_fn_base<void (doris::PriorityThreadPool::*)(int), true>::operator()<doris::PriorityThreadPool*&, int&>(doris::PriorityThreadPool*&, int&) const /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/functional:131 #21 0x5605aed9ab14 in void std::__invoke_impl<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&>(std::__invoke_other, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:61 #22 0x5605aed9a9dc in std::enable_if<is_invocable_r_v<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&>, void>::type std::__invoke_r<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&>(std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)>&, doris::PriorityThreadPool*&, int&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:111 #23 0x5605aed9a7d6 in void std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/functional:570 #24 0x5605aed9a4a4 in void std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>::operator()<>() /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/functional:629 #25 0x5605aed9a2cd in void std::__invoke_impl<void, std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>>(std::__invoke_other, std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>&&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:61 #26 0x5605aed9a21b in std::__invoke_result<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>>::type std::__invoke<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>>(std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>&&) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/invoke.h:96 #27 0x5605aed98fab in void std::thread::_Invoker<std::tuple<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_thread.h:253 #28 0x5605aed960d9 in std::thread::_Invoker<std::tuple<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)> > >::operator()() /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_thread.h:260 #29 0x5605aed9579b in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)> > > >::_M_run() /mnt/disk/lihangyu/ldb_toolchain/include/c++/11/bits/std_thread.h:211 Thread T411 created by T0 here: #0 0x5605adc69841 in __interceptor_pthread_create (/mnt/disk/lihangyu/eldenmoon/selectdb/test_env/be/lib/doris-be+0x5806841) #1 0x5605b6eadd35 in std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) (/mnt/disk/lihangyu/eldenmoon/selectdb/test_env/be/lib/doris-be+0xea4ad35) #2 0x5605aed7ebf7 in std::_MakeUniq<std::thread>::__single_object std::make_unique<std::thread, std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>&>(std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>&) (/mnt/disk/lihangyu/eldenmoon/selectdb/test_env/be/lib/doris-be+0x691bbf7) #3 0x5605aed79940 in std::thread* doris::ThreadGroup::create_thread<std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)> >(std::_Bind_result<void, std::_Mem_fn<void (doris::PriorityThreadPool::*)(int)> (doris::PriorityThreadPool*, int)>) (/mnt/disk/lihangyu/eldenmoon/selectdb/test_env/be/lib/doris-be+0x6916940) #4 0x5605aed751ab in doris::PriorityThreadPool::PriorityThreadPool(unsigned int, unsigned int) (/mnt/disk/lihangyu/eldenmoon/selectdb/test_env/be/lib/doris-be+0x69121ab) #5 0x5605af1d89a1 in doris::PInternalServiceImpl::PInternalServiceImpl(doris::ExecEnv*) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/service/internal_service.cpp:75 #6 0x5605af1c34ea in doris::BRpcService::start(int) /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/service/brpc_service.cpp:45 #7 0x5605add104f0 in main /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/service/doris_main.cpp:422 #8 0x7fb824819554 in __libc_start_main (/lib64/libc.so.6+0x22554) SUMMARY: AddressSanitizer: heap-use-after-free /mnt/disk/lihangyu/eldenmoon/selectdb/be/src/vec/common/cow.h:206 in COW<doris::vectorized::IColumn>::intrusive_ptr<doris::vectorized::IColumn const>::operator*() const & Shadow bytes around the buggy address: 0x0c06800d80f0: 00 00 00 00 fa fa 00 00 00 00 fa fa 00 00 00 00 0x0c06800d8100: fa fa 00 00 00 00 fa fa 00 00 00 00 fa fa 00 00 0x0c06800d8110: 00 00 fa fa 00 00 00 00 fa fa 00 00 00 fa fa fa 0x0c06800d8120: 00 00 00 00 fa fa 00 00 00 00 fa fa 00 00 00 00 0x0c06800d8130: fa fa 00 00 00 fa fa fa 00 00 00 07 fa fa fd fd =>0x0c06800d8140: fd[fd]fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c06800d8150: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c06800d8160: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c06800d8170: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c06800d8180: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c06800d8190: fa fa fa fa fa fa fa fa fa fa fa fa fa 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 ==120598==ABORTING ### What You Expected? no core ### How to Reproduce? **compile in asan** ``` create table test_array_string (k1 INT, k2 INT, k3 array<text>) ENGINE=olap DUPLICATE KEY(k1, k2) PARTITION BY RANGE (k1) (partition `p1` values less than ("1000"), partition `p2` values less than ("2000"),partition `p3` values less than ("3000")) DISTRIBUTED BY HASH(k2) BUCKETS 3 PROPERTIES("replication_num" = "1"); set enable_vectorized_engine=true; insert into test_array_string values(1, 2, ["c", "b", "c"]); ``` ### Anything Else? _No response_ ### Are you willing to submit PR? - [X] 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-unsubscr...@doris.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org