Please answer these questions before submitting your issue. Thanks!
[2025-09-21T18:09:24.792Z] ==================
[2025-09-21T18:09:24.792Z] WARNING: ThreadSanitizer: data race (pid=33886)
[2025-09-21T18:09:24.792Z] Read of size 8 at 0x7b6400222170 by thread T10:
[2025-09-21T18:09:24.792Z] #0 std::__1::__hash_table<std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>, std::__1::__unordered_map_hasher<unsigned long, std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, true>, std::__1::__unordered_map_equal<unsigned long, std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>, std::__1::equal_to<unsigned long>, std::__1::hash<unsigned long>, true>, std::__1::allocator<std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>>>::size[abi:ue170006]() const /usr/local/bin/../include/c++/v1/__hash_table:793:53 (gtests_dbms+0xdcb3247)
[2025-09-21T18:09:24.792Z] #1 std::__1::unordered_map<unsigned long, std::__1::shared_ptr<DB::DM::Segment>, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, std::__1::allocator<std::__1::pair<unsigned long const, std::__1::shared_ptr<DB::DM::Segment>>>>::size[abi:ue170006]() const /usr/local/bin/../include/c++/v1/unordered_map:1292:56 (gtests_dbms+0xdcb3247)
[2025-09-21T18:09:24.792Z] #2 DB::DM::DeltaMergeStore::checkSegmentUpdate(std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&, DB::DM::DeltaMergeStore::ThreadType, DB::DM::DeltaMergeStore::InputType)::$_1::operator()(DB::DM::DeltaMergeStore::BackgroundTask const&) const /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore.cpp:1713:36 (gtests_dbms+0xdcb3247)
[2025-09-21T18:09:24.792Z] #3 DB::DM::DeltaMergeStore::checkSegmentUpdate(std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&, DB::DM::DeltaMergeStore::ThreadType, DB::DM::DeltaMergeStore::InputType)::$_5::operator()(std::__1::shared_ptr<DB::DM::Segment> const&) const /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore.cpp:1825:13 (gtests_dbms+0xdcb3247)
[2025-09-21T18:09:24.793Z] #4 DB::DM::DeltaMergeStore::checkSegmentUpdate(std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&, DB::DM::DeltaMergeStore::ThreadType, DB::DM::DeltaMergeStore::InputType) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore.cpp:1904:13 (gtests_dbms+0xdca8955)
[2025-09-21T18:09:24.793Z] #5 DB::DM::DeltaMergeStore::read(DB::Context const&, DB::Settings const&, std::__1::vector<DB::DM::ColumnDefine, std::__1::allocator<DB::DM::ColumnDefine>> const&, std::__1::vector<DB::DM::RowKeyRange, std::__1::allocator<DB::DM::RowKeyRange>> const&, unsigned long, unsigned long, std::__1::shared_ptr<DB::DM::PushDownExecutor> const&, std::__1::vector<std::__1::shared_ptr<DB::RuntimeFilter>, std::__1::allocator<std::__1::shared_ptr<DB::RuntimeFilter>>> const&, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool, bool, unsigned long, std::__1::unordered_set<unsigned long, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, std::__1::allocator<unsigned long>> const&, unsigned long, std::__1::shared_ptr<DB::DM::ScanContext>)::$_1::operator()(std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&) const /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore.cpp:1305:15 (gtests_dbms+0xdcb97db)
[2025-09-21T18:09:24.793Z] #6 decltype(std::declval<DB::DM::DeltaMergeStore::read(DB::Context const&, DB::Settings const&, std::__1::vector<DB::DM::ColumnDefine, std::__1::allocator<DB::DM::ColumnDefine>> const&, std::__1::vector<DB::DM::RowKeyRange, std::__1::allocator<DB::DM::RowKeyRange>> const&, unsigned long, unsigned long, std::__1::shared_ptr<DB::DM::PushDownExecutor> const&, std::__1::vector<std::__1::shared_ptr<DB::RuntimeFilter>, std::__1::allocator<std::__1::shared_ptr<DB::RuntimeFilter>>> const&, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool, bool, unsigned long, std::__1::unordered_set<unsigned long, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, std::__1::allocator<unsigned long>> const&, unsigned long, std::__1::shared_ptr<DB::DM::ScanContext>)::$_1&>()(std::declval<std::__1::shared_ptr<DB::DM::DMContext> const&>(), std::declval<std::__1::shared_ptr<DB::DM::Segment> const&>())) std::__1::__invoke[abi:ue170006]<DB::DM::DeltaMergeStore::read(DB::Context const&, DB::Settings const&, std::__1::vector<DB::DM::ColumnDefine, std::__1::allocator<DB::DM::ColumnDefine>> const&, std::__1::vector<DB::DM::RowKeyRange, std::__1::allocator<DB::DM::RowKeyRange>> const&, unsigned long, unsigned long, std::__1::shared_ptr<DB::DM::PushDownExecutor> const&, std::__1::vector<std::__1::shared_ptr<DB::RuntimeFilter>, std::__1::allocator<std::__1::shared_ptr<DB::RuntimeFilter>>> const&, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool, bool, unsigned long, std::__1::unordered_set<unsigned long, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, std::__1::allocator<unsigned long>> const&, unsigned long, std::__1::shared_ptr<DB::DM::ScanContext>)::$_1&, std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&>(DB::DM::DeltaMergeStore::read(DB::Context const&, DB::Settings const&, std::__1::vector<DB::DM::ColumnDefine, std::__1::allocator<DB::DM::ColumnDefine>> const&, std::__1::vector<DB::DM::RowKeyRange, std::__1::allocator<DB::DM::RowKeyRange>> const&, unsigned long, unsigned long, std::__1::shared_ptr<DB::DM::PushDownExecutor> const&, std::__1::vector<std::__1::shared_ptr<DB::RuntimeFilter>, std::__1::allocator<std::__1::shared_ptr<DB::RuntimeFilter>>> const&, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool, bool, unsigned long, std::__1::unordered_set<unsigned long, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, std::__1::allocator<unsigned long>> const&, unsigned long, std::__1::shared_ptr<DB::DM::ScanContext>)::$_1&, std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&) /usr/local/bin/../include/c++/v1/__type_traits/invoke.h:340:25 (gtests_dbms+0xdcb97db)
[2025-09-21T18:09:24.793Z] #7 void std::__1::__invoke_void_return_wrapper<void, true>::__call[abi:ue170006]<DB::DM::DeltaMergeStore::read(DB::Context const&, DB::Settings const&, std::__1::vector<DB::DM::ColumnDefine, std::__1::allocator<DB::DM::ColumnDefine>> const&, std::__1::vector<DB::DM::RowKeyRange, std::__1::allocator<DB::DM::RowKeyRange>> const&, unsigned long, unsigned long, std::__1::shared_ptr<DB::DM::PushDownExecutor> const&, std::__1::vector<std::__1::shared_ptr<DB::RuntimeFilter>, std::__1::allocator<std::__1::shared_ptr<DB::RuntimeFilter>>> const&, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool, bool, unsigned long, std::__1::unordered_set<unsigned long, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, std::__1::allocator<unsigned long>> const&, unsigned long, std::__1::shared_ptr<DB::DM::ScanContext>)::$_1&, std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&>(DB::DM::DeltaMergeStore::read(DB::Context const&, DB::Settings const&, std::__1::vector<DB::DM::ColumnDefine, std::__1::allocator<DB::DM::ColumnDefine>> const&, std::__1::vector<DB::DM::RowKeyRange, std::__1::allocator<DB::DM::RowKeyRange>> const&, unsigned long, unsigned long, std::__1::shared_ptr<DB::DM::PushDownExecutor> const&, std::__1::vector<std::__1::shared_ptr<DB::RuntimeFilter>, std::__1::allocator<std::__1::shared_ptr<DB::RuntimeFilter>>> const&, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool, bool, unsigned long, std::__1::unordered_set<unsigned long, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, std::__1::allocator<unsigned long>> const&, unsigned long, std::__1::shared_ptr<DB::DM::ScanContext>)::$_1&, std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&) /usr/local/bin/../include/c++/v1/__type_traits/invoke.h:415:5 (gtests_dbms+0xdcb97db)
[2025-09-21T18:09:24.793Z] #8 std::__1::__function::__alloc_func<DB::DM::DeltaMergeStore::read(DB::Context const&, DB::Settings const&, std::__1::vector<DB::DM::ColumnDefine, std::__1::allocator<DB::DM::ColumnDefine>> const&, std::__1::vector<DB::DM::RowKeyRange, std::__1::allocator<DB::DM::RowKeyRange>> const&, unsigned long, unsigned long, std::__1::shared_ptr<DB::DM::PushDownExecutor> const&, std::__1::vector<std::__1::shared_ptr<DB::RuntimeFilter>, std::__1::allocator<std::__1::shared_ptr<DB::RuntimeFilter>>> const&, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool, bool, unsigned long, std::__1::unordered_set<unsigned long, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, std::__1::allocator<unsigned long>> const&, unsigned long, std::__1::shared_ptr<DB::DM::ScanContext>)::$_1, std::__1::allocator<DB::DM::DeltaMergeStore::read(DB::Context const&, DB::Settings const&, std::__1::vector<DB::DM::ColumnDefine, std::__1::allocator<DB::DM::ColumnDefine>> const&, std::__1::vector<DB::DM::RowKeyRange, std::__1::allocator<DB::DM::RowKeyRange>> const&, unsigned long, unsigned long, std::__1::shared_ptr<DB::DM::PushDownExecutor> const&, std::__1::vector<std::__1::shared_ptr<DB::RuntimeFilter>, std::__1::allocator<std::__1::shared_ptr<DB::RuntimeFilter>>> const&, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool, bool, unsigned long, std::__1::unordered_set<unsigned long, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, std::__1::allocator<unsigned long>> const&, unsigned long, std::__1::shared_ptr<DB::DM::ScanContext>)::$_1>, void (std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&)>::operator()[abi:ue170006](std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&) /usr/local/bin/../include/c++/v1/__functional/function.h:192:16 (gtests_dbms+0xdcb97db)
[2025-09-21T18:09:24.793Z] #9 std::__1::__function::__func<DB::DM::DeltaMergeStore::read(DB::Context const&, DB::Settings const&, std::__1::vector<DB::DM::ColumnDefine, std::__1::allocator<DB::DM::ColumnDefine>> const&, std::__1::vector<DB::DM::RowKeyRange, std::__1::allocator<DB::DM::RowKeyRange>> const&, unsigned long, unsigned long, std::__1::shared_ptr<DB::DM::PushDownExecutor> const&, std::__1::vector<std::__1::shared_ptr<DB::RuntimeFilter>, std::__1::allocator<std::__1::shared_ptr<DB::RuntimeFilter>>> const&, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool, bool, unsigned long, std::__1::unordered_set<unsigned long, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, std::__1::allocator<unsigned long>> const&, unsigned long, std::__1::shared_ptr<DB::DM::ScanContext>)::$_1, std::__1::allocator<DB::DM::DeltaMergeStore::read(DB::Context const&, DB::Settings const&, std::__1::vector<DB::DM::ColumnDefine, std::__1::allocator<DB::DM::ColumnDefine>> const&, std::__1::vector<DB::DM::RowKeyRange, std::__1::allocator<DB::DM::RowKeyRange>> const&, unsigned long, unsigned long, std::__1::shared_ptr<DB::DM::PushDownExecutor> const&, std::__1::vector<std::__1::shared_ptr<DB::RuntimeFilter>, std::__1::allocator<std::__1::shared_ptr<DB::RuntimeFilter>>> const&, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool, bool, unsigned long, std::__1::unordered_set<unsigned long, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, std::__1::allocator<unsigned long>> const&, unsigned long, std::__1::shared_ptr<DB::DM::ScanContext>)::$_1>, void (std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&)>::operator()(std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&) /usr/local/bin/../include/c++/v1/__functional/function.h:363:12 (gtests_dbms+0xdcb97db)
[2025-09-21T18:09:24.794Z] #10 std::__1::__function::__value_func<void (std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&)>::operator()[abi:ue170006](std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&) const /usr/local/bin/../include/c++/v1/__functional/function.h:517:16 (gtests_dbms+0xde2b349)
[2025-09-21T18:09:24.794Z] #11 std::__1::function<void (std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&)>::operator()(std::__1::shared_ptr<DB::DM::DMContext> const&, std::__1::shared_ptr<DB::DM::Segment> const&) const /usr/local/bin/../include/c++/v1/__functional/function.h:1168:12 (gtests_dbms+0xde2b349)
[2025-09-21T18:09:24.794Z] #12 DB::DM::SegmentReadTaskPool::finishSegment(std::__1::shared_ptr<DB::DM::SegmentReadTask> const&) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/SegmentReadTaskPool.cpp:160:5 (gtests_dbms+0xde2b349)
[2025-09-21T18:09:24.794Z] #13 DB::DM::SegmentReadTaskPool::readOneBlock(std::__1::shared_ptr<DB::IBlockInputStream>&, std::__1::shared_ptr<DB::DM::SegmentReadTask> const&) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/SegmentReadTaskPool.cpp:271:9 (gtests_dbms+0xde2c944)
[2025-09-21T18:09:24.794Z] #14 DB::DM::MergedTask::readOneBlock() /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/ReadThread/MergedTask.cpp:91:19 (gtests_dbms+0xe1f4d26)
[2025-09-21T18:09:24.794Z] #15 DB::DM::MergedTask::readBlock() /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/ReadThread/MergedTask.cpp:32:12 (gtests_dbms+0xe1f47f1)
[2025-09-21T18:09:24.794Z] #16 DB::DM::SegmentReader::readSegments() /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/ReadThread/SegmentReader.cpp:67:39 (gtests_dbms+0xe1fd37f)
[2025-09-21T18:09:24.794Z] #17 DB::DM::SegmentReader::run() /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/ReadThread/SegmentReader.cpp:122:13 (gtests_dbms+0xe1fd0f7)
[2025-09-21T18:09:24.794Z] #18 decltype(*std::declval<DB::DM::SegmentReader*>().*std::declval<void (DB::DM::SegmentReader::*)()>()()) std::__1::__invoke[abi:ue170006]<void (DB::DM::SegmentReader::*)(), DB::DM::SegmentReader*, void>(void (DB::DM::SegmentReader::*&&)(), DB::DM::SegmentReader*&&) /usr/local/bin/../include/c++/v1/__type_traits/invoke.h:308:25 (gtests_dbms+0xe1ff115)
[2025-09-21T18:09:24.794Z] #19 void std::__1::__thread_execute[abi:ue170006]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (DB::DM::SegmentReader::*)(), DB::DM::SegmentReader*, 2ul>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (DB::DM::SegmentReader::*)(), DB::DM::SegmentReader*>&, std::__1::__tuple_indices<2ul>) /usr/local/bin/../include/c++/v1/__thread/thread.h:221:5 (gtests_dbms+0xe1ff115)
[2025-09-21T18:09:24.794Z] #20 void* std::__1::__thread_proxy[abi:ue170006]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (DB::DM::SegmentReader::*)(), DB::DM::SegmentReader*>>(void*) /usr/local/bin/../include/c++/v1/__thread/thread.h:232:5 (gtests_dbms+0xe1ff115)
[2025-09-21T18:09:24.794Z]
[2025-09-21T18:09:24.794Z] Previous write of size 8 at 0x7b6400222170 by thread T6 (mutexes: write M0):
[2025-09-21T18:09:24.794Z] #0 std::__1::pair<std::__1::__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>, void*>*>, bool> std::__1::__hash_table<std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>, std::__1::__unordered_map_hasher<unsigned long, std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, true>, std::__1::__unordered_map_equal<unsigned long, std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>, std::__1::equal_to<unsigned long>, std::__1::hash<unsigned long>, true>, std::__1::allocator<std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>>>::__emplace_unique_key_args<unsigned long, std::__1::piecewise_construct_t const&, std::__1::tuple<unsigned long&&>, std::__1::tuple<>>(unsigned long const&, std::__1::piecewise_construct_t const&, std::__1::tuple<unsigned long&&>&&, std::__1::tuple<>&&) /usr/local/bin/../include/c++/v1/__hash_table:1875:9 (gtests_dbms+0xdd2b837)
[2025-09-21T18:09:24.794Z] #1 std::__1::unordered_map<unsigned long, std::__1::shared_ptr<DB::DM::Segment>, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, std::__1::allocator<std::__1::pair<unsigned long const, std::__1::shared_ptr<DB::DM::Segment>>>>::operator[](unsigned long&&) /usr/local/bin/../include/c++/v1/unordered_map:1911:21 (gtests_dbms+0xdd0d0e3)
[2025-09-21T18:09:24.794Z] #2 DB::DM::DeltaMergeStore::addSegment(std::__1::unique_lock<std::__1::shared_mutex>&, std::__1::shared_ptr<DB::DM::Segment> const&) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore_InternalSegment.cpp:103:5 (gtests_dbms+0xdd0d0e3)
[2025-09-21T18:09:24.794Z] #3 DB::DM::DeltaMergeStore::segmentSplit(DB::DM::DMContext&, std::__1::shared_ptr<DB::DM::Segment> const&, DB::DM::DeltaMergeStore::SegmentSplitReason, std::__1::optional<DB::DM::RowKeyValue>, DB::DM::DeltaMergeStore::SegmentSplitMode) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore_InternalSegment.cpp:268:9 (gtests_dbms+0xdd0ec10)
[2025-09-21T18:09:24.794Z] #4 DB::DM::DeltaMergeStore::handleBackgroundTask(bool) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore_InternalBg.cpp:412:37 (gtests_dbms+0xdcf3bd4)
[2025-09-21T18:09:24.794Z] #5 DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1::operator()() const /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore_InternalBg.cpp:295:90 (gtests_dbms+0xdcfa858)
[2025-09-21T18:09:24.794Z] #6 decltype(std::declval<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1&>()()) std::__1::__invoke[abi:ue170006]<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1&>(DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1&) /usr/local/bin/../include/c++/v1/__type_traits/invoke.h:340:25 (gtests_dbms+0xdcfa858)
[2025-09-21T18:09:24.794Z] #7 bool std::__1::__invoke_void_return_wrapper<bool, false>::__call[abi:ue170006]<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1&>(DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1&) /usr/local/bin/../include/c++/v1/__type_traits/invoke.h:407:12 (gtests_dbms+0xdcfa858)
[2025-09-21T18:09:24.794Z] #8 std::__1::__function::__alloc_func<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1, std::__1::allocator<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1>, bool ()>::operator()[abi:ue170006]() /usr/local/bin/../include/c++/v1/__functional/function.h:192:16 (gtests_dbms+0xdcfa858)
[2025-09-21T18:09:24.794Z] #9 std::__1::__function::__func<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1, std::__1::allocator<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1>, bool ()>::operator()() /usr/local/bin/../include/c++/v1/__functional/function.h:363:12 (gtests_dbms+0xdcfa858)
[2025-09-21T18:09:24.795Z] #10 std::__1::__function::__value_func<bool ()>::operator()[abi:ue170006]() const /usr/local/bin/../include/c++/v1/__functional/function.h:517:16 (gtests_dbms+0x10c44646)
[2025-09-21T18:09:24.795Z] #11 std::__1::function<bool ()>::operator()() const /usr/local/bin/../include/c++/v1/__functional/function.h:1168:12 (gtests_dbms+0x10c44646)
[2025-09-21T18:09:24.795Z] #12 DB::BackgroundProcessingPool::threadFunction(unsigned long) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/BackgroundProcessingPool.cpp:265:25 (gtests_dbms+0x10c44646)
[2025-09-21T18:09:24.795Z] #13 DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1::operator()() const /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/BackgroundProcessingPool.cpp:101:46 (gtests_dbms+0x10c45598)
[2025-09-21T18:09:24.795Z] #14 decltype(std::declval<DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1>()()) std::__1::__invoke[abi:ue170006]<DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1>(DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1&&) /usr/local/bin/../include/c++/v1/__type_traits/invoke.h:340:25 (gtests_dbms+0x10c45598)
[2025-09-21T18:09:24.795Z] #15 void std::__1::__thread_execute[abi:ue170006]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1>&, std::__1::__tuple_indices<>) /usr/local/bin/../include/c++/v1/__thread/thread.h:221:5 (gtests_dbms+0x10c45598)
[2025-09-21T18:09:24.795Z] #16 void* std::__1::__thread_proxy[abi:ue170006]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1>>(void*) /usr/local/bin/../include/c++/v1/__thread/thread.h:232:5 (gtests_dbms+0x10c45598)
[2025-09-21T18:09:24.795Z]
[2025-09-21T18:09:24.795Z] Location is heap block of size 1136 at 0x7b6400221f00 allocated by main thread:
[2025-09-21T18:09:24.795Z] #0 operator new(unsigned long) /tiflash-release-8.3/release-centos7-llvm/dockerfiles/misc/llvm-project/compiler-rt/lib/tsan/rtl/tsan_new_delete.cpp:64:3 (gtests_dbms+0x36e5c27)
[2025-09-21T18:09:24.795Z] #1 DB::DM::DeltaMergeStore::create(DB::Context&, bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, unsigned int, long, long, bool, std::__1::vector<DB::DM::ColumnDefine, std::__1::allocator<DB::DM::ColumnDefine>> const&, DB::DM::ColumnDefine const&, bool, unsigned long, std::__1::shared_ptr<std::__1::vector<DB::DM::LocalIndexInfo, std::__1::allocator<DB::DM::LocalIndexInfo>>>, DB::DM::DeltaMergeStore::Settings const&, DB::ThreadPoolImpl<DB::ThreadFromGlobalPoolImpl<false>>*) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore.cpp:367:20 (gtests_dbms+0xdc9edc9)
[2025-09-21T18:09:24.795Z] #2 DB::StorageDeltaMerge::getAndMaybeInitStore(DB::ThreadPoolImpl<DB::ThreadFromGlobalPoolImpl<false>>*) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/StorageDeltaMerge.cpp:1855:18 (gtests_dbms+0x10cb0b3a)
[2025-09-21T18:09:24.795Z] #3 DB::StorageDeltaMerge::write(std::__1::shared_ptr<DB::IAST> const&, DB::Settings const&) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/StorageDeltaMerge.cpp:542:50 (gtests_dbms+0x10cb23d8)
[2025-09-21T18:09:24.795Z] #4 DB::MockStorage::addTableDataForDeltaMerge(DB::Context&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::vector<DB::ColumnWithTypeAndName, std::__1::allocator<DB::ColumnWithTypeAndName>>&) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Debug/MockStorage.cpp:152:48 (gtests_dbms+0xfa5f347)
[2025-09-21T18:09:24.795Z] #5 DB::tests::MockDAGRequestContext::addMockDeltaMergeData(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::vector<DB::ColumnWithTypeAndName, std::__1::allocator<DB::ColumnWithTypeAndName>>) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/TestUtils/mockExecutor.cpp:628:19 (gtests_dbms+0x7b774c9)
[2025-09-21T18:09:24.795Z] #6 DB::tests::MockDAGRequestContext::addMockDeltaMerge(std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>> const&, std::__1::vector<DB::MockColumnInfo, std::__1::allocator<DB::MockColumnInfo>> const&, std::__1::vector<DB::ColumnWithTypeAndName, std::__1::allocator<DB::ColumnWithTypeAndName>>) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/TestUtils/mockExecutor.cpp:693:5 (gtests_dbms+0x7b77f12)
[2025-09-21T18:09:24.795Z] #7 DB::tests::ExecutorsWithDMTestRunner::initializeContext() /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Flash/tests/gtest_executors_with_dm.cpp:81:17 (gtests_dbms+0x3e35254)
[2025-09-21T18:09:24.795Z] #8 DB::tests::ExecutorTest::SetUp() /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/TestUtils/ExecutorTestUtils.cpp:70:5 (gtests_dbms+0x7ae89f9)
[2025-09-21T18:09:24.795Z] #9 void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/contrib/googletest/googletest/src/gtest.cc:2443:10 (gtests_dbms+0xe541199)
[2025-09-21T18:09:24.795Z] #10 void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/contrib/googletest/googletest/src/gtest.cc:2479:14 (gtests_dbms+0xe541199)
[2025-09-21T18:09:24.795Z] #11 testing::Test::Run() /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/contrib/googletest/googletest/src/gtest.cc:2513:3 (gtests_dbms+0xe5167fe)
[2025-09-21T18:09:24.795Z] #12 testing::TestInfo::Run() /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/contrib/googletest/googletest/src/gtest.cc:2693:11 (gtests_dbms+0xe51811e)
[2025-09-21T18:09:24.795Z] #13 testing::TestCase::Run() /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/contrib/googletest/googletest/src/gtest.cc:2811:28 (gtests_dbms+0xe519103)
[2025-09-21T18:09:24.795Z] #14 testing::internal::UnitTestImpl::RunAllTests() /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/contrib/googletest/googletest/src/gtest.cc:5177:43 (gtests_dbms+0xe52b51a)
[2025-09-21T18:09:24.795Z] #15 bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/contrib/googletest/googletest/src/gtest.cc:2443:10 (gtests_dbms+0xe5426ad)
[2025-09-21T18:09:24.795Z] #16 bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/contrib/googletest/googletest/src/gtest.cc:2479:14 (gtests_dbms+0xe5426ad)
[2025-09-21T18:09:24.795Z] #17 testing::UnitTest::Run() /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/contrib/googletest/googletest/src/gtest.cc:4786:10 (gtests_dbms+0xe52ade4)
[2025-09-21T18:09:24.795Z] #18 RUN_ALL_TESTS() /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/contrib/googletest/googletest/include/gtest/gtest.h:2341:46 (gtests_dbms+0x779f667)
[2025-09-21T18:09:24.795Z] #19 main /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/TestUtils/gtests_dbms_main.cpp:120:16 (gtests_dbms+0x779f667)
[2025-09-21T18:09:24.795Z]
[2025-09-21T18:09:24.795Z] Mutex M0 (0x7b3800134508) created at:
[2025-09-21T18:09:24.795Z] #0 pthread_mutex_init /tiflash-release-8.3/release-centos7-llvm/dockerfiles/misc/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1313:3 (gtests_dbms+0x365fc00)
[2025-09-21T18:09:24.796Z] #1 std::__1::recursive_mutex::recursive_mutex() <null> (libc++.so.1+0x8f87b)
[2025-09-21T18:09:24.796Z] #2 DB::DM::DeltaValueSpace* std::__1::construct_at[abi:ue170006]<DB::DM::DeltaValueSpace, unsigned long&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>>>&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFile>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFile>>>&, DB::DM::DeltaValueSpace*>(DB::DM::DeltaValueSpace*, unsigned long&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>>>&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFile>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFile>>>&) /usr/local/bin/../include/c++/v1/__memory/construct_at.h:41:46 (gtests_dbms+0xddf056e)
[2025-09-21T18:09:24.796Z] #3 void std::__1::allocator_traits<std::__1::allocator<DB::DM::DeltaValueSpace>>::construct[abi:ue170006]<DB::DM::DeltaValueSpace, unsigned long&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>>>&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFile>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFile>>>&, void, void>(std::__1::allocator<DB::DM::DeltaValueSpace>&, DB::DM::DeltaValueSpace*, unsigned long&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>>>&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFile>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFile>>>&) /usr/local/bin/../include/c++/v1/__memory/allocator_traits.h:304:9 (gtests_dbms+0xddf056e)
[2025-09-21T18:09:24.796Z] #4 std::__1::__shared_ptr_emplace<DB::DM::DeltaValueSpace, std::__1::allocator<DB::DM::DeltaValueSpace>>::__shared_ptr_emplace[abi:ue170006]<unsigned long&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>>>&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFile>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFile>>>&>(std::__1::allocator<DB::DM::DeltaValueSpace>, unsigned long&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>>>&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFile>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFile>>>&) /usr/local/bin/../include/c++/v1/__memory/shared_ptr.h:299:13 (gtests_dbms+0xddf056e)
[2025-09-21T18:09:24.796Z] #5 std::__1::shared_ptr<DB::DM::DeltaValueSpace> std::__1::allocate_shared[abi:ue170006]<DB::DM::DeltaValueSpace, std::__1::allocator<DB::DM::DeltaValueSpace>, unsigned long&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>>>&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFile>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFile>>>&, void>(std::__1::allocator<DB::DM::DeltaValueSpace> const&, unsigned long&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>>>&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFile>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFile>>>&) /usr/local/bin/../include/c++/v1/__memory/shared_ptr.h:1022:55 (gtests_dbms+0xddf056e)
[2025-09-21T18:09:24.796Z] #6 std::__1::shared_ptr<DB::DM::DeltaValueSpace> std::__1::make_shared[abi:ue170006]<DB::DM::DeltaValueSpace, unsigned long&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>>>&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFile>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFile>>>&, void>(unsigned long&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFilePersisted>>>&, std::__1::vector<std::__1::shared_ptr<DB::DM::ColumnFile>, std::__1::allocator<std::__1::shared_ptr<DB::DM::ColumnFile>>>&) /usr/local/bin/../include/c++/v1/__memory/shared_ptr.h:1031:12 (gtests_dbms+0xddafdda)
[2025-09-21T18:09:24.796Z] #7 DB::DM::Segment::applySplit(std::__1::unique_lock<std::__1::recursive_mutex> const&, DB::DM::DMContext&, std::__1::shared_ptr<DB::DM::SegmentSnapshot> const&, DB::DM::WriteBatches&, DB::DM::Segment::SplitInfo&) const /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/Segment.cpp:2209:24 (gtests_dbms+0xddafdda)
[2025-09-21T18:09:24.796Z] #8 DB::DM::DeltaMergeStore::segmentSplit(DB::DM::DMContext&, std::__1::shared_ptr<DB::DM::Segment> const&, DB::DM::DeltaMergeStore::SegmentSplitReason, std::__1::optional<DB::DM::RowKeyValue>, DB::DM::DeltaMergeStore::SegmentSplitMode) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore_InternalSegment.cpp:261:50 (gtests_dbms+0xdd0e74d)
[2025-09-21T18:09:24.796Z] #9 DB::DM::DeltaMergeStore::handleBackgroundTask(bool) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore_InternalBg.cpp:412:37 (gtests_dbms+0xdcf3bd4)
[2025-09-21T18:09:24.796Z] #10 DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1::operator()() const /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore_InternalBg.cpp:295:90 (gtests_dbms+0xdcfa858)
[2025-09-21T18:09:24.796Z] #11 decltype(std::declval<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1&>()()) std::__1::__invoke[abi:ue170006]<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1&>(DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1&) /usr/local/bin/../include/c++/v1/__type_traits/invoke.h:340:25 (gtests_dbms+0xdcfa858)
[2025-09-21T18:09:24.796Z] #12 bool std::__1::__invoke_void_return_wrapper<bool, false>::__call[abi:ue170006]<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1&>(DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1&) /usr/local/bin/../include/c++/v1/__type_traits/invoke.h:407:12 (gtests_dbms+0xdcfa858)
[2025-09-21T18:09:24.796Z] #13 std::__1::__function::__alloc_func<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1, std::__1::allocator<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1>, bool ()>::operator()[abi:ue170006]() /usr/local/bin/../include/c++/v1/__functional/function.h:192:16 (gtests_dbms+0xdcfa858)
[2025-09-21T18:09:24.796Z] #14 std::__1::__function::__func<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1, std::__1::allocator<DB::DM::DeltaMergeStore::setUpBackgroundTask(std::__1::shared_ptr<DB::DM::DMContext> const&)::$_1>, bool ()>::operator()() /usr/local/bin/../include/c++/v1/__functional/function.h:363:12 (gtests_dbms+0xdcfa858)
[2025-09-21T18:09:24.796Z] #15 std::__1::__function::__value_func<bool ()>::operator()[abi:ue170006]() const /usr/local/bin/../include/c++/v1/__functional/function.h:517:16 (gtests_dbms+0x10c44646)
[2025-09-21T18:09:24.796Z] #16 std::__1::function<bool ()>::operator()() const /usr/local/bin/../include/c++/v1/__functional/function.h:1168:12 (gtests_dbms+0x10c44646)
[2025-09-21T18:09:24.796Z] #17 DB::BackgroundProcessingPool::threadFunction(unsigned long) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/BackgroundProcessingPool.cpp:265:25 (gtests_dbms+0x10c44646)
[2025-09-21T18:09:24.796Z] #18 DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1::operator()() const /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/BackgroundProcessingPool.cpp:101:46 (gtests_dbms+0x10c45598)
[2025-09-21T18:09:24.796Z] #19 decltype(std::declval<DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1>()()) std::__1::__invoke[abi:ue170006]<DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1>(DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1&&) /usr/local/bin/../include/c++/v1/__type_traits/invoke.h:340:25 (gtests_dbms+0x10c45598)
[2025-09-21T18:09:24.797Z] #20 void std::__1::__thread_execute[abi:ue170006]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1>&, std::__1::__tuple_indices<>) /usr/local/bin/../include/c++/v1/__thread/thread.h:221:5 (gtests_dbms+0x10c45598)
[2025-09-21T18:09:24.797Z] #21 void* std::__1::__thread_proxy[abi:ue170006]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1>>(void*) /usr/local/bin/../include/c++/v1/__thread/thread.h:232:5 (gtests_dbms+0x10c45598)
[2025-09-21T18:09:24.797Z]
[2025-09-21T18:09:24.797Z] Thread T10 'SegmentReader' (tid=33979, running) created by main thread at:
[2025-09-21T18:09:24.797Z] #0 pthread_create /tiflash-release-8.3/release-centos7-llvm/dockerfiles/misc/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1020:3 (gtests_dbms+0x365e21b)
[2025-09-21T18:09:24.797Z] #1 std::__1::__libcpp_thread_create[abi:ue170006](unsigned long*, void* (*)(void*), void*) /usr/local/bin/../include/c++/v1/__threading_support:371:10 (gtests_dbms+0xe1fd215)
[2025-09-21T18:09:24.797Z] #2 std::__1::thread::thread<void (DB::DM::SegmentReader::*)(), DB::DM::SegmentReader*, void>(void (DB::DM::SegmentReader::*&&)(), DB::DM::SegmentReader*&&) /usr/local/bin/../include/c++/v1/__thread/thread.h:248:16 (gtests_dbms+0xe1fd215)
[2025-09-21T18:09:24.797Z] #3 DB::DM::SegmentReader::SegmentReader(DB::DM::WorkQueue<std::__1::shared_ptr<DB::DM::MergedTask>>&, std::__1::vector<int, std::__1::allocator<int>> const&) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/ReadThread/SegmentReader.cpp:37:13 (gtests_dbms+0xe1fcfba)
[2025-09-21T18:09:24.797Z] #4 std::__1::__unique_if<DB::DM::SegmentReader>::__unique_single std::__1::make_unique[abi:ue170006]<DB::DM::SegmentReader, DB::DM::WorkQueue<std::__1::shared_ptr<DB::DM::MergedTask>>&, std::__1::vector<int, std::__1::allocator<int>> const&>(DB::DM::WorkQueue<std::__1::shared_ptr<DB::DM::MergedTask>>&, std::__1::vector<int, std::__1::allocator<int>> const&) /usr/local/bin/../include/c++/v1/__memory/unique_ptr.h:689:30 (gtests_dbms+0xe1fad65)
[2025-09-21T18:09:24.797Z] #5 DB::DM::SegmentReaderPool::SegmentReaderPool(int, std::__1::vector<int, std::__1::allocator<int>> const&) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/ReadThread/SegmentReader.cpp:149:27 (gtests_dbms+0xe1fad65)
[2025-09-21T18:09:24.797Z] #6 std::__1::__unique_if<DB::DM::SegmentReaderPool>::__unique_single std::__1::make_unique[abi:ue170006]<DB::DM::SegmentReaderPool, unsigned int&, std::__1::vector<int, std::__1::allocator<int>> const&>(unsigned int&, std::__1::vector<int, std::__1::allocator<int>> const&) /usr/local/bin/../include/c++/v1/__memory/unique_ptr.h:689:30 (gtests_dbms+0xe1fb9e5)
[2025-09-21T18:09:24.797Z] #7 DB::DM::SegmentReaderPoolManager::init(unsigned int, double) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/DeltaMerge/ReadThread/SegmentReader.cpp:190:32 (gtests_dbms+0xe1fb9e5)
[2025-09-21T18:09:24.797Z] #8 main /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/TestUtils/gtests_dbms_main.cpp:78:50 (gtests_dbms+0x779e7d9)
[2025-09-21T18:09:24.797Z]
[2025-09-21T18:09:24.797Z] Thread T6 'bg-block-1' (tid=33975, running) created by main thread at:
[2025-09-21T18:09:24.797Z] #0 pthread_create /tiflash-release-8.3/release-centos7-llvm/dockerfiles/misc/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1020:3 (gtests_dbms+0x365e21b)
[2025-09-21T18:09:24.797Z] #1 std::__1::__libcpp_thread_create[abi:ue170006](unsigned long*, void* (*)(void*), void*) /usr/local/bin/../include/c++/v1/__threading_support:371:10 (gtests_dbms+0x10c4347b)
[2025-09-21T18:09:24.797Z] #2 std::__1::thread::thread<DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1, void>(DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>)::$_1&&) /usr/local/bin/../include/c++/v1/__thread/thread.h:248:16 (gtests_dbms+0x10c4347b)
[2025-09-21T18:09:24.797Z] #3 DB::BackgroundProcessingPool::BackgroundProcessingPool(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Storages/BackgroundProcessingPool.cpp:101:22 (gtests_dbms+0x10c4347b)
[2025-09-21T18:09:24.797Z] #4 DB::BackgroundProcessingPool* std::__1::construct_at[abi:ue170006]<DB::BackgroundProcessingPool, unsigned short&, char const (&) [10], std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>, DB::BackgroundProcessingPool*>(DB::BackgroundProcessingPool*, unsigned short&, char const (&) [10], std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>&&) /usr/local/bin/../include/c++/v1/__memory/construct_at.h:41:46 (gtests_dbms+0x100a3832)
[2025-09-21T18:09:24.797Z] #5 void std::__1::allocator_traits<std::__1::allocator<DB::BackgroundProcessingPool>>::construct[abi:ue170006]<DB::BackgroundProcessingPool, unsigned short&, char const (&) [10], std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>, void, void>(std::__1::allocator<DB::BackgroundProcessingPool>&, DB::BackgroundProcessingPool*, unsigned short&, char const (&) [10], std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>&&) /usr/local/bin/../include/c++/v1/__memory/allocator_traits.h:304:9 (gtests_dbms+0x10085629)
[2025-09-21T18:09:24.797Z] #6 std::__1::__shared_ptr_emplace<DB::BackgroundProcessingPool, std::__1::allocator<DB::BackgroundProcessingPool>>::__shared_ptr_emplace[abi:ue170006]<unsigned short&, char const (&) [10], std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>>(std::__1::allocator<DB::BackgroundProcessingPool>, unsigned short&, char const (&) [10], std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>&&) /usr/local/bin/../include/c++/v1/__memory/shared_ptr.h:299:13 (gtests_dbms+0x10085629)
[2025-09-21T18:09:24.797Z] #7 std::__1::shared_ptr<DB::BackgroundProcessingPool> std::__1::allocate_shared[abi:ue170006]<DB::BackgroundProcessingPool, std::__1::allocator<DB::BackgroundProcessingPool>, unsigned short&, char const (&) [10], std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>, void>(std::__1::allocator<DB::BackgroundProcessingPool> const&, unsigned short&, char const (&) [10], std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>&&) /usr/local/bin/../include/c++/v1/__memory/shared_ptr.h:1022:55 (gtests_dbms+0x10085629)
[2025-09-21T18:09:24.797Z] #8 std::__1::shared_ptr<DB::BackgroundProcessingPool> std::__1::make_shared[abi:ue170006]<DB::BackgroundProcessingPool, unsigned short&, char const (&) [10], std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>, void>(unsigned short&, char const (&) [10], std::__1::shared_ptr<DB::JointThreadInfoJeallocMap>&&) /usr/local/bin/../include/c++/v1/__memory/shared_ptr.h:1031:12 (gtests_dbms+0x10085629)
[2025-09-21T18:09:24.797Z] #9 DB::Context::initializeBlockableBackgroundPool(unsigned short) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Interpreters/Context.cpp:1340:15 (gtests_dbms+0x10085629)
[2025-09-21T18:09:24.797Z] #10 DB::tests::TiFlashTestEnv::addGlobalContext(DB::Settings const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>, DB::PageStorageRunMode, unsigned long) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Debug/TiFlashTestEnv.cpp:128:21 (gtests_dbms+0xfa95a71)
[2025-09-21T18:09:24.797Z] #11 DB::tests::TiFlashTestEnv::initializeGlobalContext(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>, DB::PageStorageRunMode, unsigned long) /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/Debug/TiFlashTestEnv.cpp:103:5 (gtests_dbms+0xfa955d4)
[2025-09-21T18:09:24.797Z] #12 main /home/jenkins/agent/workspace/tiflash-sanitizer-daily/tiflash/dbms/src/TestUtils/gtests_dbms_main.cpp:73:5 (gtests_dbms+0x779e64f)
[2025-09-21T18:09:24.797Z]
[2025-09-21T18:09:24.797Z] SUMMARY: ThreadSanitizer: data race /usr/local/bin/../include/c++/v1/__hash_table:793:53 in std::__1::__hash_table<std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>, std::__1::__unordered_map_hasher<unsigned long, std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>, std::__1::hash<unsigned long>, std::__1::equal_to<unsigned long>, true>, std::__1::__unordered_map_equal<unsigned long, std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>, std::__1::equal_to<unsigned long>, std::__1::hash<unsigned long>, true>, std::__1::allocator<std::__1::__hash_value_type<unsigned long, std::__1::shared_ptr<DB::DM::Segment>>>>::size[abi:ue170006]() const
[2025-09-21T18:09:24.798Z] ==================
Bug Report
Please answer these questions before submitting your issue. Thanks!
1. Minimal reproduce step (Required)
2. What did you expect to see? (Required)
3. What did you see instead (Required)
ExecutorsWithDMTestRunner.Basic4. What is your TiFlash version? (Required)