Antoine Pitrou created ARROW-11976:
--------------------------------------

             Summary: [C++] Sporadic TSAN error in TestThreadPool.SetCapacity
                 Key: ARROW-11976
                 URL: https://issues.apache.org/jira/browse/ARROW-11976
             Project: Apache Arrow
          Issue Type: Bug
          Components: C++, Continuous Integration
            Reporter: Antoine Pitrou


See 
https://github.com/ursacomputing/crossbow/runs/2114240297?check_suite_focus=true#step:6:3529

{code}
WARNING: ThreadSanitizer: data race (pid=5075)
  Write of size 8 at 0x7b3800000188 by main thread:
    #0 pthread_cond_destroy <null> (arrow-threading-utility-test+0x65035)
    #1 arrow::GatingTask::Impl::~Impl() 
/arrow/cpp/src/arrow/testing/gtest_util.cc:737:3 
(libarrow_testing.so.400+0x2a974f)
[....]

  Previous read of size 8 at 0x7b3800000188 by thread T13:
    #0 pthread_cond_broadcast <null> (arrow-threading-utility-test+0x64ea2)
    #1 std::condition_variable::notify_all() <null> (libstdc++.so.6+0xd0e8c)
    #2 std::_Function_handler<void (), 
arrow::GatingTask::Impl::Task()::'lambda'()>::_M_invoke(std::_Any_data const&) 
/usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2
 (libarrow_testing.so.400+0x2927aa)
    #3 std::function<void ()>::operator()() const 
/usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14
 (arrow-threading-utility-test+0x23b296)
    #4 arrow::internal::FnOnce<void ()>::FnImpl<std::function<void ()> 
>::invoke() /arrow/cpp/src/arrow/util/functional.h:122:42 
(arrow-threading-utility-test+0x23b207)
    #5 arrow::internal::FnOnce<void ()>::operator()() && 
/arrow/cpp/src/arrow/util/functional.h:110:17 (libarrow.so.400+0xf5f140)
    #6 
arrow::internal::WorkerLoop(std::shared_ptr<arrow::internal::ThreadPool::State>,
 std::_List_iterator<std::thread>) 
/arrow/cpp/src/arrow/util/thread_pool.cc:108:11 (libarrow.so.400+0xfe7fcb)
[...]
{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to