Created
April 23, 2021 18:34
-
-
Save xanderdunn/37f21b05b18ad7ac66b370272cf9b804 to your computer and use it in GitHub Desktop.
Thread Sanitizer on Quill in DEBUG mode
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
================== | |
WARNING: ThreadSanitizer: data race (pid=13313) | |
Read of size 8 at 0x7b4800002680 by thread T2: | |
#0 quill::detail::BackendWorker::_read_event_queue(quill::detail::ThreadContext*) <null> (MyDataPreProcessor+0x43284a) | |
#1 quill::detail::BackendWorker::_main_loop() <null> (MyDataPreProcessor+0x431c95) | |
#2 quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()::operator()() const <null> (MyDataPreProcessor+0x51bcd7) | |
#3 std::thread::_State_impl<std::thread::_Invoker<std::tuple<quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()> > >::_M_run() <null> (MyDataPreProcessor+0x51bb69) | |
#4 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Previous write of size 8 at 0x7b4800002680 by main thread: | |
#0 posix_memalign <null> (MyDataPreProcessor+0x43ca18) | |
#1 quill::detail::aligned_alloc(unsigned long, unsigned long) <null> (MyDataPreProcessor+0x5725e6) | |
#2 initialize_logging() <null> (MyDataPreProcessor+0x4e2bc1) | |
#3 main <null> (MyDataPreProcessor+0x4e2c42) | |
As if synchronized via sleep: | |
#0 nanosleep <null> (MyDataPreProcessor+0x43a8ad) | |
#1 quill::detail::BackendWorker::_main_loop() <null> (MyDataPreProcessor+0x431ddd) | |
#2 quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()::operator()() const <null> (MyDataPreProcessor+0x51bcd7) | |
#3 std::thread::_State_impl<std::thread::_Invoker<std::tuple<quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()> > >::_M_run() <null> (MyDataPreProcessor+0x51bb69) | |
#4 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Location is heap block of size 384 at 0x7b4800002580 allocated by main thread: | |
#0 posix_memalign <null> (MyDataPreProcessor+0x43ca18) | |
#1 quill::detail::aligned_alloc(unsigned long, unsigned long) <null> (MyDataPreProcessor+0x5725e6) | |
#2 initialize_logging() <null> (MyDataPreProcessor+0x4e2bc1) | |
#3 main <null> (MyDataPreProcessor+0x4e2c42) | |
Thread T2 'Quill_Backend' (tid=13316, running) created by main thread at: | |
#0 pthread_create <null> (MyDataPreProcessor+0x43cf5b) | |
#1 __gthread_create /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/build/build-cc-gcc-final/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:676:35 (libstdc++.so.6+0xc91f8) | |
#2 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:135:37 (libstdc++.so.6+0xc91f8) | |
#3 void std::call_once<quill::detail::BackendWorker::run()::'lambda'()>(std::once_flag&, quill::detail::BackendWorker::run()::'lambda'()&&)::'lambda0'()::__invoke() <null> (MyDataPreProcessor+0x51b966) | |
#4 pthread_once <null> (MyDataPreProcessor+0x440315) | |
#5 void std::call_once<quill::detail::BackendWorker::run()::'lambda'()>(std::once_flag&, quill::detail::BackendWorker::run()::'lambda'()&&) <null> (MyDataPreProcessor+0x51b900) | |
#6 quill::detail::LogManager::start_backend_worker(bool, std::initializer_list<int> const&) <null> (MyDataPreProcessor+0x428410) | |
#7 quill::start(bool, std::initializer_list<int>) <null> (MyDataPreProcessor+0x428355) | |
#8 initialize_logging() <null> (MyDataPreProcessor+0x4e2b81) | |
#9 main <null> (MyDataPreProcessor+0x4e2c42) | |
SUMMARY: ThreadSanitizer: data race (/home/xander/dev/My_model/MyDataPreProcessor+0x43284a) in quill::detail::BackendWorker::_read_event_queue(quill::detail::ThreadContext*) | |
================== | |
================== | |
WARNING: ThreadSanitizer: data race (pid=13313) | |
Read of size 8 at 0x7b48000d0000 by thread T2: | |
#0 quill::detail::BackendWorker::_read_event_queue(quill::detail::ThreadContext*) <null> (MyDataPreProcessor+0x43284a) | |
#1 quill::detail::BackendWorker::_main_loop() <null> (MyDataPreProcessor+0x431c95) | |
#2 quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()::operator()() const <null> (MyDataPreProcessor+0x51bcd7) | |
#3 std::thread::_State_impl<std::thread::_Invoker<std::tuple<quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()> > >::_M_run() <null> (MyDataPreProcessor+0x51bb69) | |
#4 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Previous write of size 8 at 0x7b48000d0000 by thread T10: | |
#0 posix_memalign <null> (MyDataPreProcessor+0x43ca18) | |
#1 quill::detail::aligned_alloc(unsigned long, unsigned long) <null> (MyDataPreProcessor+0x5725e6) | |
#2 std::_Function_handler<void (), ccMydata::preprocess_record_batch(std::shared_ptr<arrow::RecordBatch>, junction::ConcurrentMap_Leapfrog<long, ccMydata::MyBook*, junction::DefaultKeyTraits<long>, junction::DefaultValueTraits<ccMydata::MyBook*> >&, folly::fbvector<std::shared_ptr<ccMydata::MyBook>, std::allocator<std::shared_ptr<ccMydata::MyBook> > >&, long&, std::unordered_map<long, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::hash<long>, std::equal_to<long>, std::allocator<std::pair<long const, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >&, std::unordered_set<long, std::hash<long>, std::equal_to<long>, std::allocator<long> >&, long&, tf::Executor&, tf::Taskflow&, folly::fbvector<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >, std::allocator<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > > > >&, unsigned short&)::$_2>::_M_invoke(std::_Any_data const&) <null> (MyDataPreProcessor+0x4e3b6c) | |
#3 tf::Executor::_invoke_static_task(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x511d78) | |
#4 tf::Executor::_invoke(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x510f96) | |
#5 tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&)::operator()(tf::Worker&) const <null> (MyDataPreProcessor+0x510307) | |
#6 std::thread::_State_impl<std::thread::_Invoker<std::tuple<tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&), std::reference_wrapper<tf::Worker> > > >::_M_run() <null> (MyDataPreProcessor+0x5101b9) | |
#7 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
As if synchronized via sleep: | |
#0 nanosleep <null> (MyDataPreProcessor+0x43a8ad) | |
#1 quill::detail::BackendWorker::_main_loop() <null> (MyDataPreProcessor+0x431ddd) | |
#2 quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()::operator()() const <null> (MyDataPreProcessor+0x51bcd7) | |
#3 std::thread::_State_impl<std::thread::_Invoker<std::tuple<quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()> > >::_M_run() <null> (MyDataPreProcessor+0x51bb69) | |
#4 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Location is heap block of size 384 at 0x7b48000cff00 allocated by thread T10: | |
#0 posix_memalign <null> (MyDataPreProcessor+0x43ca18) | |
#1 quill::detail::aligned_alloc(unsigned long, unsigned long) <null> (MyDataPreProcessor+0x5725e6) | |
#2 std::_Function_handler<void (), ccMydata::preprocess_record_batch(std::shared_ptr<arrow::RecordBatch>, junction::ConcurrentMap_Leapfrog<long, ccMydata::MyBook*, junction::DefaultKeyTraits<long>, junction::DefaultValueTraits<ccMydata::MyBook*> >&, folly::fbvector<std::shared_ptr<ccMydata::MyBook>, std::allocator<std::shared_ptr<ccMydata::MyBook> > >&, long&, std::unordered_map<long, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::hash<long>, std::equal_to<long>, std::allocator<std::pair<long const, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >&, std::unordered_set<long, std::hash<long>, std::equal_to<long>, std::allocator<long> >&, long&, tf::Executor&, tf::Taskflow&, folly::fbvector<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >, std::allocator<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > > > >&, unsigned short&)::$_2>::_M_invoke(std::_Any_data const&) <null> (MyDataPreProcessor+0x4e3b6c) | |
#3 tf::Executor::_invoke_static_task(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x511d78) | |
#4 tf::Executor::_invoke(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x510f96) | |
#5 tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&)::operator()(tf::Worker&) const <null> (MyDataPreProcessor+0x510307) | |
#6 std::thread::_State_impl<std::thread::_Invoker<std::tuple<tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&), std::reference_wrapper<tf::Worker> > > >::_M_run() <null> (MyDataPreProcessor+0x5101b9) | |
#7 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Thread T2 'Quill_Backend' (tid=13316, running) created by main thread at: | |
#0 pthread_create <null> (MyDataPreProcessor+0x43cf5b) | |
#1 __gthread_create /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/build/build-cc-gcc-final/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:676:35 (libstdc++.so.6+0xc91f8) | |
#2 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:135:37 (libstdc++.so.6+0xc91f8) | |
#3 void std::call_once<quill::detail::BackendWorker::run()::'lambda'()>(std::once_flag&, quill::detail::BackendWorker::run()::'lambda'()&&)::'lambda0'()::__invoke() <null> (MyDataPreProcessor+0x51b966) | |
#4 pthread_once <null> (MyDataPreProcessor+0x440315) | |
#5 void std::call_once<quill::detail::BackendWorker::run()::'lambda'()>(std::once_flag&, quill::detail::BackendWorker::run()::'lambda'()&&) <null> (MyDataPreProcessor+0x51b900) | |
#6 quill::detail::LogManager::start_backend_worker(bool, std::initializer_list<int> const&) <null> (MyDataPreProcessor+0x428410) | |
#7 quill::start(bool, std::initializer_list<int>) <null> (MyDataPreProcessor+0x428355) | |
#8 initialize_logging() <null> (MyDataPreProcessor+0x4e2b81) | |
#9 main <null> (MyDataPreProcessor+0x4e2c42) | |
Thread T10 (tid=13325, running) created by main thread at: | |
#0 pthread_create <null> (MyDataPreProcessor+0x43cf5b) | |
#1 __gthread_create /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/build/build-cc-gcc-final/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:676:35 (libstdc++.so.6+0xc91f8) | |
#2 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:135:37 (libstdc++.so.6+0xc91f8) | |
#3 tf::Executor::Executor(unsigned long) <null> (MyDataPreProcessor+0x4ef4d1) | |
#4 ccMydata::process_incoming_batches(unsigned short&) <null> (MyDataPreProcessor+0x4dbd03) | |
#5 main <null> (MyDataPreProcessor+0x4e2c68) | |
SUMMARY: ThreadSanitizer: data race (/home/xander/dev/My_model/MyDataPreProcessor+0x43284a) in quill::detail::BackendWorker::_read_event_queue(quill::detail::ThreadContext*) | |
================== | |
================== | |
WARNING: ThreadSanitizer: data race (pid=13313) | |
Atomic read of size 8 at 0x7b4000048040 by thread T2: | |
#0 __tsan_atomic64_load <null> (MyDataPreProcessor+0x488b3e) | |
#1 quill::detail::BackendWorker::_read_event_queue(quill::detail::ThreadContext*) <null> (MyDataPreProcessor+0x43285b) | |
#2 quill::detail::BackendWorker::_main_loop() <null> (MyDataPreProcessor+0x431c95) | |
#3 quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()::operator()() const <null> (MyDataPreProcessor+0x51bcd7) | |
#4 std::thread::_State_impl<std::thread::_Invoker<std::tuple<quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()> > >::_M_run() <null> (MyDataPreProcessor+0x51bb69) | |
#5 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Previous write of size 8 at 0x7b4000048040 by thread T10: | |
#0 posix_memalign <null> (MyDataPreProcessor+0x43ca18) | |
#1 quill::detail::aligned_alloc(unsigned long, unsigned long) <null> (MyDataPreProcessor+0x5725e6) | |
#2 std::_Function_handler<void (), ccMydata::preprocess_record_batch(std::shared_ptr<arrow::RecordBatch>, junction::ConcurrentMap_Leapfrog<long, ccMydata::MyBook*, junction::DefaultKeyTraits<long>, junction::DefaultValueTraits<ccMydata::MyBook*> >&, folly::fbvector<std::shared_ptr<ccMydata::MyBook>, std::allocator<std::shared_ptr<ccMydata::MyBook> > >&, long&, std::unordered_map<long, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::hash<long>, std::equal_to<long>, std::allocator<std::pair<long const, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >&, std::unordered_set<long, std::hash<long>, std::equal_to<long>, std::allocator<long> >&, long&, tf::Executor&, tf::Taskflow&, folly::fbvector<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >, std::allocator<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > > > >&, unsigned short&)::$_2>::_M_invoke(std::_Any_data const&) <null> (MyDataPreProcessor+0x4e3b6c) | |
#3 tf::Executor::_invoke_static_task(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x511d78) | |
#4 tf::Executor::_invoke(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x510f96) | |
#5 tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&)::operator()(tf::Worker&) const <null> (MyDataPreProcessor+0x510307) | |
#6 std::thread::_State_impl<std::thread::_Invoker<std::tuple<tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&), std::reference_wrapper<tf::Worker> > > >::_M_run() <null> (MyDataPreProcessor+0x5101b9) | |
#7 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
As if synchronized via sleep: | |
#0 nanosleep <null> (MyDataPreProcessor+0x43a8ad) | |
#1 quill::detail::BackendWorker::_main_loop() <null> (MyDataPreProcessor+0x431ddd) | |
#2 quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()::operator()() const <null> (MyDataPreProcessor+0x51bcd7) | |
#3 std::thread::_State_impl<std::thread::_Invoker<std::tuple<quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()> > >::_M_run() <null> (MyDataPreProcessor+0x51bb69) | |
#4 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Location is heap block of size 256 at 0x7b4000048000 allocated by thread T10: | |
#0 posix_memalign <null> (MyDataPreProcessor+0x43ca18) | |
#1 quill::detail::aligned_alloc(unsigned long, unsigned long) <null> (MyDataPreProcessor+0x5725e6) | |
#2 std::_Function_handler<void (), ccMydata::preprocess_record_batch(std::shared_ptr<arrow::RecordBatch>, junction::ConcurrentMap_Leapfrog<long, ccMydata::MyBook*, junction::DefaultKeyTraits<long>, junction::DefaultValueTraits<ccMydata::MyBook*> >&, folly::fbvector<std::shared_ptr<ccMydata::MyBook>, std::allocator<std::shared_ptr<ccMydata::MyBook> > >&, long&, std::unordered_map<long, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::hash<long>, std::equal_to<long>, std::allocator<std::pair<long const, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >&, std::unordered_set<long, std::hash<long>, std::equal_to<long>, std::allocator<long> >&, long&, tf::Executor&, tf::Taskflow&, folly::fbvector<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >, std::allocator<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > > > >&, unsigned short&)::$_2>::_M_invoke(std::_Any_data const&) <null> (MyDataPreProcessor+0x4e3b6c) | |
#3 tf::Executor::_invoke_static_task(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x511d78) | |
#4 tf::Executor::_invoke(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x510f96) | |
#5 tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&)::operator()(tf::Worker&) const <null> (MyDataPreProcessor+0x510307) | |
#6 std::thread::_State_impl<std::thread::_Invoker<std::tuple<tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&), std::reference_wrapper<tf::Worker> > > >::_M_run() <null> (MyDataPreProcessor+0x5101b9) | |
#7 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Thread T2 'Quill_Backend' (tid=13316, running) created by main thread at: | |
#0 pthread_create <null> (MyDataPreProcessor+0x43cf5b) | |
#1 __gthread_create /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/build/build-cc-gcc-final/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:676:35 (libstdc++.so.6+0xc91f8) | |
#2 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:135:37 (libstdc++.so.6+0xc91f8) | |
#3 void std::call_once<quill::detail::BackendWorker::run()::'lambda'()>(std::once_flag&, quill::detail::BackendWorker::run()::'lambda'()&&)::'lambda0'()::__invoke() <null> (MyDataPreProcessor+0x51b966) | |
#4 pthread_once <null> (MyDataPreProcessor+0x440315) | |
#5 void std::call_once<quill::detail::BackendWorker::run()::'lambda'()>(std::once_flag&, quill::detail::BackendWorker::run()::'lambda'()&&) <null> (MyDataPreProcessor+0x51b900) | |
#6 quill::detail::LogManager::start_backend_worker(bool, std::initializer_list<int> const&) <null> (MyDataPreProcessor+0x428410) | |
#7 quill::start(bool, std::initializer_list<int>) <null> (MyDataPreProcessor+0x428355) | |
#8 initialize_logging() <null> (MyDataPreProcessor+0x4e2b81) | |
#9 main <null> (MyDataPreProcessor+0x4e2c42) | |
Thread T10 (tid=13325, running) created by main thread at: | |
#0 pthread_create <null> (MyDataPreProcessor+0x43cf5b) | |
#1 __gthread_create /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/build/build-cc-gcc-final/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:676:35 (libstdc++.so.6+0xc91f8) | |
#2 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:135:37 (libstdc++.so.6+0xc91f8) | |
#3 tf::Executor::Executor(unsigned long) <null> (MyDataPreProcessor+0x4ef4d1) | |
#4 ccMydata::process_incoming_batches(unsigned short&) <null> (MyDataPreProcessor+0x4dbd03) | |
#5 main <null> (MyDataPreProcessor+0x4e2c68) | |
SUMMARY: ThreadSanitizer: data race (/home/xander/dev/My_model/MyDataPreProcessor+0x488b3e) in __tsan_atomic64_load | |
================== | |
================== | |
WARNING: ThreadSanitizer: data race (pid=13313) | |
Atomic read of size 8 at 0x7b4000048080 by thread T2: | |
#0 __tsan_atomic64_load <null> (MyDataPreProcessor+0x488b3e) | |
#1 quill::detail::BackendWorker::_read_event_queue(quill::detail::ThreadContext*) <null> (MyDataPreProcessor+0x432873) | |
#2 quill::detail::BackendWorker::_main_loop() <null> (MyDataPreProcessor+0x431c95) | |
#3 quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()::operator()() const <null> (MyDataPreProcessor+0x51bcd7) | |
#4 std::thread::_State_impl<std::thread::_Invoker<std::tuple<quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()> > >::_M_run() <null> (MyDataPreProcessor+0x51bb69) | |
#5 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Previous write of size 8 at 0x7b4000048080 by thread T10: | |
#0 posix_memalign <null> (MyDataPreProcessor+0x43ca18) | |
#1 quill::detail::aligned_alloc(unsigned long, unsigned long) <null> (MyDataPreProcessor+0x5725e6) | |
#2 std::_Function_handler<void (), ccMydata::preprocess_record_batch(std::shared_ptr<arrow::RecordBatch>, junction::ConcurrentMap_Leapfrog<long, ccMydata::MyBook*, junction::DefaultKeyTraits<long>, junction::DefaultValueTraits<ccMydata::MyBook*> >&, folly::fbvector<std::shared_ptr<ccMydata::MyBook>, std::allocator<std::shared_ptr<ccMydata::MyBook> > >&, long&, std::unordered_map<long, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::hash<long>, std::equal_to<long>, std::allocator<std::pair<long const, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >&, std::unordered_set<long, std::hash<long>, std::equal_to<long>, std::allocator<long> >&, long&, tf::Executor&, tf::Taskflow&, folly::fbvector<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >, std::allocator<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > > > >&, unsigned short&)::$_2>::_M_invoke(std::_Any_data const&) <null> (MyDataPreProcessor+0x4e3b6c) | |
#3 tf::Executor::_invoke_static_task(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x511d78) | |
#4 tf::Executor::_invoke(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x510f96) | |
#5 tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&)::operator()(tf::Worker&) const <null> (MyDataPreProcessor+0x510307) | |
#6 std::thread::_State_impl<std::thread::_Invoker<std::tuple<tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&), std::reference_wrapper<tf::Worker> > > >::_M_run() <null> (MyDataPreProcessor+0x5101b9) | |
#7 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
As if synchronized via sleep: | |
#0 nanosleep <null> (MyDataPreProcessor+0x43a8ad) | |
#1 quill::detail::BackendWorker::_main_loop() <null> (MyDataPreProcessor+0x431ddd) | |
#2 quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()::operator()() const <null> (MyDataPreProcessor+0x51bcd7) | |
#3 std::thread::_State_impl<std::thread::_Invoker<std::tuple<quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()> > >::_M_run() <null> (MyDataPreProcessor+0x51bb69) | |
#4 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Location is heap block of size 256 at 0x7b4000048000 allocated by thread T10: | |
#0 posix_memalign <null> (MyDataPreProcessor+0x43ca18) | |
#1 quill::detail::aligned_alloc(unsigned long, unsigned long) <null> (MyDataPreProcessor+0x5725e6) | |
#2 std::_Function_handler<void (), ccMydata::preprocess_record_batch(std::shared_ptr<arrow::RecordBatch>, junction::ConcurrentMap_Leapfrog<long, ccMydata::MyBook*, junction::DefaultKeyTraits<long>, junction::DefaultValueTraits<ccMydata::MyBook*> >&, folly::fbvector<std::shared_ptr<ccMydata::MyBook>, std::allocator<std::shared_ptr<ccMydata::MyBook> > >&, long&, std::unordered_map<long, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::hash<long>, std::equal_to<long>, std::allocator<std::pair<long const, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >&, std::unordered_set<long, std::hash<long>, std::equal_to<long>, std::allocator<long> >&, long&, tf::Executor&, tf::Taskflow&, folly::fbvector<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >, std::allocator<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > > > >&, unsigned short&)::$_2>::_M_invoke(std::_Any_data const&) <null> (MyDataPreProcessor+0x4e3b6c) | |
#3 tf::Executor::_invoke_static_task(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x511d78) | |
#4 tf::Executor::_invoke(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x510f96) | |
#5 tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&)::operator()(tf::Worker&) const <null> (MyDataPreProcessor+0x510307) | |
#6 std::thread::_State_impl<std::thread::_Invoker<std::tuple<tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&), std::reference_wrapper<tf::Worker> > > >::_M_run() <null> (MyDataPreProcessor+0x5101b9) | |
#7 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Thread T2 'Quill_Backend' (tid=13316, running) created by main thread at: | |
#0 pthread_create <null> (MyDataPreProcessor+0x43cf5b) | |
#1 __gthread_create /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/build/build-cc-gcc-final/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:676:35 (libstdc++.so.6+0xc91f8) | |
#2 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:135:37 (libstdc++.so.6+0xc91f8) | |
#3 void std::call_once<quill::detail::BackendWorker::run()::'lambda'()>(std::once_flag&, quill::detail::BackendWorker::run()::'lambda'()&&)::'lambda0'()::__invoke() <null> (MyDataPreProcessor+0x51b966) | |
#4 pthread_once <null> (MyDataPreProcessor+0x440315) | |
#5 void std::call_once<quill::detail::BackendWorker::run()::'lambda'()>(std::once_flag&, quill::detail::BackendWorker::run()::'lambda'()&&) <null> (MyDataPreProcessor+0x51b900) | |
#6 quill::detail::LogManager::start_backend_worker(bool, std::initializer_list<int> const&) <null> (MyDataPreProcessor+0x428410) | |
#7 quill::start(bool, std::initializer_list<int>) <null> (MyDataPreProcessor+0x428355) | |
#8 initialize_logging() <null> (MyDataPreProcessor+0x4e2b81) | |
#9 main <null> (MyDataPreProcessor+0x4e2c42) | |
Thread T10 (tid=13325, running) created by main thread at: | |
#0 pthread_create <null> (MyDataPreProcessor+0x43cf5b) | |
#1 __gthread_create /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/build/build-cc-gcc-final/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:676:35 (libstdc++.so.6+0xc91f8) | |
#2 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:135:37 (libstdc++.so.6+0xc91f8) | |
#3 tf::Executor::Executor(unsigned long) <null> (MyDataPreProcessor+0x4ef4d1) | |
#4 ccMydata::process_incoming_batches(unsigned short&) <null> (MyDataPreProcessor+0x4dbd03) | |
#5 main <null> (MyDataPreProcessor+0x4e2c68) | |
SUMMARY: ThreadSanitizer: data race (/home/xander/dev/My_model/MyDataPreProcessor+0x488b3e) in __tsan_atomic64_load | |
================== | |
================== | |
WARNING: ThreadSanitizer: data race (pid=13313) | |
Atomic read of size 8 at 0x7b40000480c0 by thread T2: | |
#0 __tsan_atomic64_load <null> (MyDataPreProcessor+0x488b3e) | |
#1 quill::detail::BackendWorker::_read_event_queue(quill::detail::ThreadContext*) <null> (MyDataPreProcessor+0x4328e3) | |
#2 quill::detail::BackendWorker::_main_loop() <null> (MyDataPreProcessor+0x431c95) | |
#3 quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()::operator()() const <null> (MyDataPreProcessor+0x51bcd7) | |
#4 std::thread::_State_impl<std::thread::_Invoker<std::tuple<quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()> > >::_M_run() <null> (MyDataPreProcessor+0x51bb69) | |
#5 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Previous write of size 8 at 0x7b40000480c0 by thread T10: | |
[failed to restore the stack] | |
As if synchronized via sleep: | |
#0 nanosleep <null> (MyDataPreProcessor+0x43a8ad) | |
#1 quill::detail::BackendWorker::_main_loop() <null> (MyDataPreProcessor+0x431ddd) | |
#2 quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()::operator()() const <null> (MyDataPreProcessor+0x51bcd7) | |
#3 std::thread::_State_impl<std::thread::_Invoker<std::tuple<quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()> > >::_M_run() <null> (MyDataPreProcessor+0x51bb69) | |
#4 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Location is heap block of size 256 at 0x7b4000048000 allocated by thread T10: | |
#0 posix_memalign <null> (MyDataPreProcessor+0x43ca18) | |
#1 quill::detail::aligned_alloc(unsigned long, unsigned long) <null> (MyDataPreProcessor+0x5725e6) | |
#2 std::_Function_handler<void (), ccMydata::preprocess_record_batch(std::shared_ptr<arrow::RecordBatch>, junction::ConcurrentMap_Leapfrog<long, ccMydata::MyBook*, junction::DefaultKeyTraits<long>, junction::DefaultValueTraits<ccMydata::MyBook*> >&, folly::fbvector<std::shared_ptr<ccMydata::MyBook>, std::allocator<std::shared_ptr<ccMydata::MyBook> > >&, long&, std::unordered_map<long, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::hash<long>, std::equal_to<long>, std::allocator<std::pair<long const, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >&, std::unordered_set<long, std::hash<long>, std::equal_to<long>, std::allocator<long> >&, long&, tf::Executor&, tf::Taskflow&, folly::fbvector<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >, std::allocator<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > > > >&, unsigned short&)::$_2>::_M_invoke(std::_Any_data const&) <null> (MyDataPreProcessor+0x4e3b6c) | |
#3 tf::Executor::_invoke_static_task(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x511d78) | |
#4 tf::Executor::_invoke(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x510f96) | |
#5 tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&)::operator()(tf::Worker&) const <null> (MyDataPreProcessor+0x510307) | |
#6 std::thread::_State_impl<std::thread::_Invoker<std::tuple<tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&), std::reference_wrapper<tf::Worker> > > >::_M_run() <null> (MyDataPreProcessor+0x5101b9) | |
#7 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Thread T2 'Quill_Backend' (tid=13316, running) created by main thread at: | |
#0 pthread_create <null> (MyDataPreProcessor+0x43cf5b) | |
#1 __gthread_create /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/build/build-cc-gcc-final/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:676:35 (libstdc++.so.6+0xc91f8) | |
#2 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:135:37 (libstdc++.so.6+0xc91f8) | |
#3 void std::call_once<quill::detail::BackendWorker::run()::'lambda'()>(std::once_flag&, quill::detail::BackendWorker::run()::'lambda'()&&)::'lambda0'()::__invoke() <null> (MyDataPreProcessor+0x51b966) | |
#4 pthread_once <null> (MyDataPreProcessor+0x440315) | |
#5 void std::call_once<quill::detail::BackendWorker::run()::'lambda'()>(std::once_flag&, quill::detail::BackendWorker::run()::'lambda'()&&) <null> (MyDataPreProcessor+0x51b900) | |
#6 quill::detail::LogManager::start_backend_worker(bool, std::initializer_list<int> const&) <null> (MyDataPreProcessor+0x428410) | |
#7 quill::start(bool, std::initializer_list<int>) <null> (MyDataPreProcessor+0x428355) | |
#8 initialize_logging() <null> (MyDataPreProcessor+0x4e2b81) | |
#9 main <null> (MyDataPreProcessor+0x4e2c42) | |
Thread T10 (tid=13325, running) created by main thread at: | |
#0 pthread_create <null> (MyDataPreProcessor+0x43cf5b) | |
#1 __gthread_create /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/build/build-cc-gcc-final/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:676:35 (libstdc++.so.6+0xc91f8) | |
#2 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:135:37 (libstdc++.so.6+0xc91f8) | |
#3 tf::Executor::Executor(unsigned long) <null> (MyDataPreProcessor+0x4ef4d1) | |
#4 ccMydata::process_incoming_batches(unsigned short&) <null> (MyDataPreProcessor+0x4dbd03) | |
#5 main <null> (MyDataPreProcessor+0x4e2c68) | |
SUMMARY: ThreadSanitizer: data race (/home/xander/dev/My_model/MyDataPreProcessor+0x488b3e) in __tsan_atomic64_load | |
================== | |
================== | |
WARNING: ThreadSanitizer: data race (pid=13313) | |
Atomic read of size 8 at 0x7b40000a80c0 by thread T2: | |
#0 __tsan_atomic64_load <null> (MyDataPreProcessor+0x488b3e) | |
#1 quill::detail::BackendWorker::_read_event_queue(quill::detail::ThreadContext*) <null> (MyDataPreProcessor+0x4328e3) | |
#2 quill::detail::BackendWorker::_main_loop() <null> (MyDataPreProcessor+0x431c95) | |
#3 quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()::operator()() const <null> (MyDataPreProcessor+0x51bcd7) | |
#4 std::thread::_State_impl<std::thread::_Invoker<std::tuple<quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()> > >::_M_run() <null> (MyDataPreProcessor+0x51bb69) | |
#5 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Previous write of size 8 at 0x7b40000a80c0 by thread T15: | |
#0 posix_memalign <null> (MyDataPreProcessor+0x43ca18) | |
#1 quill::detail::aligned_alloc(unsigned long, unsigned long) <null> (MyDataPreProcessor+0x5725e6) | |
#2 std::_Function_handler<void (), ccMydata::preprocess_record_batch(std::shared_ptr<arrow::RecordBatch>, junction::ConcurrentMap_Leapfrog<long, ccMydata::MyBook*, junction::DefaultKeyTraits<long>, junction::DefaultValueTraits<ccMydata::MyBook*> >&, folly::fbvector<std::shared_ptr<ccMydata::MyBook>, std::allocator<std::shared_ptr<ccMydata::MyBook> > >&, long&, std::unordered_map<long, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::hash<long>, std::equal_to<long>, std::allocator<std::pair<long const, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >&, std::unordered_set<long, std::hash<long>, std::equal_to<long>, std::allocator<long> >&, long&, tf::Executor&, tf::Taskflow&, folly::fbvector<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >, std::allocator<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > > > >&, unsigned short&)::$_2>::_M_invoke(std::_Any_data const&) <null> (MyDataPreProcessor+0x4e3b6c) | |
#3 tf::Executor::_invoke_static_task(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x511d78) | |
#4 tf::Executor::_invoke(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x510f96) | |
#5 tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&)::operator()(tf::Worker&) const <null> (MyDataPreProcessor+0x510307) | |
#6 std::thread::_State_impl<std::thread::_Invoker<std::tuple<tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&), std::reference_wrapper<tf::Worker> > > >::_M_run() <null> (MyDataPreProcessor+0x5101b9) | |
#7 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
As if synchronized via sleep: | |
#0 nanosleep <null> (MyDataPreProcessor+0x43a8ad) | |
#1 quill::detail::BackendWorker::_main_loop() <null> (MyDataPreProcessor+0x431ddd) | |
#2 quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()::operator()() const <null> (MyDataPreProcessor+0x51bcd7) | |
#3 std::thread::_State_impl<std::thread::_Invoker<std::tuple<quill::detail::BackendWorker::run()::'lambda'()::operator()() const::'lambda'()> > >::_M_run() <null> (MyDataPreProcessor+0x51bb69) | |
#4 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Location is heap block of size 256 at 0x7b40000a8000 allocated by thread T15: | |
#0 posix_memalign <null> (MyDataPreProcessor+0x43ca18) | |
#1 quill::detail::aligned_alloc(unsigned long, unsigned long) <null> (MyDataPreProcessor+0x5725e6) | |
#2 std::_Function_handler<void (), ccMydata::preprocess_record_batch(std::shared_ptr<arrow::RecordBatch>, junction::ConcurrentMap_Leapfrog<long, ccMydata::MyBook*, junction::DefaultKeyTraits<long>, junction::DefaultValueTraits<ccMydata::MyBook*> >&, folly::fbvector<std::shared_ptr<ccMydata::MyBook>, std::allocator<std::shared_ptr<ccMydata::MyBook> > >&, long&, std::unordered_map<long, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::hash<long>, std::equal_to<long>, std::allocator<std::pair<long const, folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >&, std::unordered_set<long, std::hash<long>, std::equal_to<long>, std::allocator<long> >&, long&, tf::Executor&, tf::Taskflow&, folly::fbvector<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > >, std::allocator<std::shared_ptr<std::deque<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > >, std::allocator<folly::fbvector<std::shared_ptr<ccMydata::MyBookInfo>, std::allocator<std::shared_ptr<ccMydata::MyBookInfo> > > > > > > >&, unsigned short&)::$_2>::_M_invoke(std::_Any_data const&) <null> (MyDataPreProcessor+0x4e3b6c) | |
#3 tf::Executor::_invoke_static_task(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x511d78) | |
#4 tf::Executor::_invoke(tf::Worker&, tf::Node*) <null> (MyDataPreProcessor+0x510f96) | |
#5 tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&)::operator()(tf::Worker&) const <null> (MyDataPreProcessor+0x510307) | |
#6 std::thread::_State_impl<std::thread::_Invoker<std::tuple<tf::Executor::_spawn(unsigned long)::'lambda'(tf::Worker&), std::reference_wrapper<tf::Worker> > > >::_M_run() <null> (MyDataPreProcessor+0x5101b9) | |
#7 execute_native_thread_routine /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:80:18 (libstdc++.so.6+0xc9066) | |
Thread T2 'Quill_Backend' (tid=13316, running) created by main thread at: | |
#0 pthread_create <null> (MyDataPreProcessor+0x43cf5b) | |
#1 __gthread_create /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/build/build-cc-gcc-final/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:676:35 (libstdc++.so.6+0xc91f8) | |
#2 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:135:37 (libstdc++.so.6+0xc91f8) | |
#3 void std::call_once<quill::detail::BackendWorker::run()::'lambda'()>(std::once_flag&, quill::detail::BackendWorker::run()::'lambda'()&&)::'lambda0'()::__invoke() <null> (MyDataPreProcessor+0x51b966) | |
#4 pthread_once <null> (MyDataPreProcessor+0x440315) | |
#5 void std::call_once<quill::detail::BackendWorker::run()::'lambda'()>(std::once_flag&, quill::detail::BackendWorker::run()::'lambda'()&&) <null> (MyDataPreProcessor+0x51b900) | |
#6 quill::detail::LogManager::start_backend_worker(bool, std::initializer_list<int> const&) <null> (MyDataPreProcessor+0x428410) | |
#7 quill::start(bool, std::initializer_list<int>) <null> (MyDataPreProcessor+0x428355) | |
#8 initialize_logging() <null> (MyDataPreProcessor+0x4e2b81) | |
#9 main <null> (MyDataPreProcessor+0x4e2c42) | |
Thread T15 (tid=13330, running) created by main thread at: | |
#0 pthread_create <null> (MyDataPreProcessor+0x43cf5b) | |
#1 __gthread_create /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/build/build-cc-gcc-final/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:676:35 (libstdc++.so.6+0xc91f8) | |
#2 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/ctng-compilers_1618239181388/work/.build/x86_64-conda-linux-gnu/src/gcc/libstdc++-v3/src/c++11/thread.cc:135:37 (libstdc++.so.6+0xc91f8) | |
#3 tf::Executor::Executor(unsigned long) <null> (MyDataPreProcessor+0x4ef4d1) | |
#4 ccMydata::process_incoming_batches(unsigned short&) <null> (MyDataPreProcessor+0x4dbd03) | |
#5 main <null> (MyDataPreProcessor+0x4e2c68) | |
SUMMARY: ThreadSanitizer: data race (/home/xander/dev/My_model/MyDataPreProcessor+0x488b3e) in __tsan_atomic64_load | |
================== |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment