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)