Balazs Hevele created IMPALA-15078:
--------------------------------------

             Summary: TSAN data race in DataStreamTest
                 Key: IMPALA-15078
                 URL: https://issues.apache.org/jira/browse/IMPALA-15078
             Project: IMPALA
          Issue Type: Bug
            Reporter: Balazs Hevele


TSAN data race found in 
DataStreamTest.TotalHasDeferredRpcsTimeIncludesOpenInterval

==================
WARNING: ThreadSanitizer: data race (pid=769298)
  Write of size 4 at 0x0000092b6070 by main thread:
    #0 
impala::DataStreamTest_TotalHasDeferredRpcsTimeIncludesOpenInterval_Test::TestBody()
 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/data-stream-test.cc:797:38
 (data-stream-test+0x24f7b7e)
    #1 void 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/mnt/source/googletest/googletest-1.14.0/googletest/src/gtest.cc:2612:27 
(data-stream-test+0x5ea125c)
    #2 void 
testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/mnt/source/googletest/googletest-1.14.0/googletest/src/gtest.cc:2648:52 
(data-stream-test+0x5ea125c)
    #3 main 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/data-stream-test.cc:1045:10
 (data-stream-test+0x24f9860)

  Previous read of size 4 at 0x0000092b6070 by thread T89:
    #0 impala::KrpcDataStreamMgr::Maintenance() 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/krpc-data-stream-mgr.cc:413:18
 (data-stream-test+0x2fde0f7)
    #1 impala::KrpcDataStreamMgr::Init(impala::MemTracker*)::$_4::operator()() 
const 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/krpc-data-stream-mgr.cc:102:3
 (data-stream-test+0x2fe0041)
    #2 
boost::detail::function::void_function_obj_invoker0<impala::KrpcDataStreamMgr::Init(impala::MemTracker*)::$_4,
 void>::invoke(boost::detail::function::function_buffer&) 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/function/function_template.hpp:158:11
 (data-stream-test+0x2fdfe19)
    #3 boost::function0<void>::operator()() const 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/function/function_template.hpp:763:14
 (data-stream-test+0x3672c31)
    #4 impala::Thread::SuperviseThread(char const*, 
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, boost::function<void ()> const&, impala::ThreadDebugInfo const*, 
impala::Promise<long, (impala::PromiseMode)0>*) 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/util/thread.cc:397:3
 (data-stream-test+0x385fe3f)
    #5 void boost::_bi::list5<boost::_bi::value<char const*>, 
boost::_bi::value<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> > >, boost::_bi::value<boost::function<void ()> >, 
boost::_bi::value<impala::ThreadDebugInfo*>, 
boost::_bi::value<impala::Promise<long, (impala::PromiseMode)0>*> 
>::operator()<void (*)(char const*, std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, boost::function<void ()> 
const&, impala::ThreadDebugInfo const*, impala::Promise<long, 
(impala::PromiseMode)0>*), boost::_bi::list0>(boost::_bi::type<void>, void 
(*&)(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> > const&, boost::function<void ()> const&, 
impala::ThreadDebugInfo const*, impala::Promise<long, 
(impala::PromiseMode)0>*), boost::_bi::list0&, int) 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/bind/bind.hpp:531:9
 (data-stream-test+0x38689f5)
    #6 boost::_bi::bind_t<void, void (*)(char const*, 
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, boost::function<void ()> const&, impala::ThreadDebugInfo const*, 
impala::Promise<long, (impala::PromiseMode)0>*), 
boost::_bi::list5<boost::_bi::value<char const*>, 
boost::_bi::value<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> > >, boost::_bi::value<boost::function<void ()> >, 
boost::_bi::value<impala::ThreadDebugInfo*>, 
boost::_bi::value<impala::Promise<long, (impala::PromiseMode)0>*> > 
>::operator()() 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/bind/bind.hpp:1294:16
 (data-stream-test+0x3868903)
    #7 boost::detail::thread_data<boost::_bi::bind_t<void, void (*)(char 
const*, std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> > const&, boost::function<void ()> const&, 
impala::ThreadDebugInfo const*, impala::Promise<long, 
(impala::PromiseMode)0>*), boost::_bi::list5<boost::_bi::value<char const*>, 
boost::_bi::value<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> > >, boost::_bi::value<boost::function<void ()> >, 
boost::_bi::value<impala::ThreadDebugInfo*>, 
boost::_bi::value<impala::Promise<long, (impala::PromiseMode)0>*> > > >::run() 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/thread/detail/thread.hpp:120:17
 (data-stream-test+0x38684b0)
    #8 thread_proxy 
/mnt/source/boost/boost_1_74_0-p1/libs/thread/src/pthread/thread.cpp:179:37 
(data-stream-test+0x42b0b56)

  Location is global 'fLI::FLAGS_datastream_sender_timeout_ms' of size 4 at 
0x0000092b6070 (data-stream-test+0x0000092b6070)

  Thread T89 (tid=769592, running) created by main thread at:
    #0 pthread_create <null> (data-stream-test+0x24980b3)
    #1 boost::thread::start_thread_noexcept() 
/mnt/source/boost/boost_1_74_0-p1/libs/thread/src/pthread/thread.cpp:263:39 
(data-stream-test+0x42afe5d)
    #2 boost::thread::thread<void (*)(char const*, 
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, boost::function<void ()> const&, impala::ThreadDebugInfo const*, 
impala::Promise<long, (impala::PromiseMode)0>*), char const*, 
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> 
>, boost::function<void ()>, impala::ThreadDebugInfo*, impala::Promise<long, 
(impala::PromiseMode)0>*>(void (*)(char const*, 
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, boost::function<void ()> const&, impala::ThreadDebugInfo const*, 
impala::Promise<long, (impala::PromiseMode)0>*), char const*, 
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> 
>, boost::function<void ()>, impala::ThreadDebugInfo*, impala::Promise<long, 
(impala::PromiseMode)0>*) 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/thread/detail/thread.hpp:424:13
 (data-stream-test+0x3863545)
    #3 impala::Thread::StartThread(std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, boost::function<void ()> const&, std::unique_ptr<impala::Thread, 
std::default_delete<impala::Thread> >*, bool) 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/util/thread.cc:337:13
 (data-stream-test+0x385f58f)
    #4 impala::Status 
impala::Thread::Create<impala::KrpcDataStreamMgr::Init(impala::MemTracker*)::$_4>(std::__cxx11::basic_string<char,
 std::char_traits<char>, std::allocator<char> > const&, 
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, impala::KrpcDataStreamMgr::Init(impala::MemTracker*)::$_4 const&, 
std::unique_ptr<impala::Thread, std::default_delete<impala::Thread> >*, bool) 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/util/thread.h:74:12
 (data-stream-test+0x2fdba06)
    #5 impala::KrpcDataStreamMgr::Init(impala::MemTracker*) 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/krpc-data-stream-mgr.cc:102:3
 (data-stream-test+0x2fdb85b)
    #6 impala::DataStreamTest::StartKrpcBackend() 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/data-stream-test.cc:624:5
 (data-stream-test+0x2525658)
    #7 impala::DataStreamTest::SetUp() 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/data-stream-test.cc:244:5
 (data-stream-test+0x2500ead)
    #8 void 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/mnt/source/googletest/googletest-1.14.0/googletest/src/gtest.cc:2612:27 
(data-stream-test+0x5ea125c)
    #9 void 
testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/mnt/source/googletest/googletest-1.14.0/googletest/src/gtest.cc:2648:52 
(data-stream-test+0x5ea125c)
    #10 main 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/data-stream-test.cc:1045:10
 (data-stream-test+0x24f9860)

SUMMARY: ThreadSanitizer: data race 
/data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/data-stream-test.cc:797:38
 in 
impala::DataStreamTest_TotalHasDeferredRpcsTimeIncludesOpenInterval_Test::TestBody()
==================




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to