[ https://issues.apache.org/jira/browse/IMPALA-9916?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Yida Wu resolved IMPALA-9916. ----------------------------- Target Version: Impala 4.0 Resolution: Fixed > DiskIoMgrTest.MetricsOfWriteIoError failed due to data race in TSAN build > -------------------------------------------------------------------------- > > Key: IMPALA-9916 > URL: https://issues.apache.org/jira/browse/IMPALA-9916 > Project: IMPALA > Issue Type: Bug > Components: Backend > Affects Versions: Impala 4.0 > Environment: BUILD_TAG: jenkins-impala-asf-master-core-tsan-30 > Build TYPE: TSAN > Reporter: Wenzhe Zhou > Assignee: Yida Wu > Priority: Critical > Labels: broken-build > > IMPALA-9829 added new test case DiskIoMgrTest.MetricsOfWriteIoError, but it > failed in TSAN build. > 18:12:42 [ RUN ] DiskIoMgrTest.MetricsOfWriteIoError > 18:12:42 ================== > 18:12:42 WARNING: ThreadSanitizer: data race (pid=3922) > 18:12:42 Write of size 4 at 0x7b8800013488 by thread T186: > 18:12:42 #0 > impala::io::DiskIoMgrTest_MetricsOfWriteIoError_Test::TestBody()::$_4::operator()(impala::Status > const&) const > /data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/be/src/runtime/io/disk-io-mgr-test.cc:1757:25 > (unifiedbetests+0x1f32b83) > 18:12:42 #1 std::_Function_handler<void (impala::Status const&), > impala::io::DiskIoMgrTest_MetricsOfWriteIoError_Test::TestBody()::$_4>::_M_invoke(std::_Any_data > const&, impala::Status const&) > /data/jenkins/workspace/impala-asf-master-core-tsan/Impala-Toolchain/toolchain-packages-gcc7.5.0/gcc-7.5.0/lib/gcc/x86_64-pc-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:316:2 > (unifiedbetests+0x1f32993) > 18:12:42 #2 std::function<void (impala::Status > const&)>::operator()(impala::Status const&) const > /data/jenkins/workspace/impala-asf-master-core-tsan/Impala-Toolchain/toolchain-packages-gcc7.5.0/gcc-7.5.0/lib/gcc/x86_64-pc-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:706:14 > (unifiedbetests+0x2bd7562) > 18:12:42 #3 impala::io::RequestContext::WriteDone(impala::io::WriteRange*, > impala::Status const&) > /data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/be/src/runtime/io/request-context.cc:229:3 > (unifiedbetests+0x2bd3cf9) > 18:12:42 #4 impala::io::DiskIoMgr::Write(impala::io::RequestContext*, > impala::io::WriteRange*) > /data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/be/src/runtime/io/disk-io-mgr.cc:579:19 > (unifiedbetests+0x2bbca47) > 18:12:42 #5 impala::io::DiskQueue::DiskThreadLoop(impala::io::DiskIoMgr*) > /data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/be/src/runtime/io/disk-io-mgr.cc:550:15 > (unifiedbetests+0x2bbb7f6) > 18:12:42 #6 boost::_mfi::mf1<void, impala::io::DiskQueue, > impala::io::DiskIoMgr*>::operator()(impala::io::DiskQueue*, > impala::io::DiskIoMgr*) const > /data/jenkins/workspace/impala-asf-master-core-tsan/Impala-Toolchain/toolchain-packages-gcc7.5.0/boost-1.61.0-p2/include/boost/bind/mem_fn_template.hpp:165:29 > (unifiedbetests+0x2bc6afd) > 18:12:42 #7 void boost::_bi::list2<boost::_bi::value<impala::io::DiskQueue*>, > boost::_bi::value<impala::io::DiskIoMgr*> > >::operator()<boost::_mfi::mf1<void, impala::io::DiskQueue, > impala::io::DiskIoMgr*>, boost::_bi::list0>(boost::_bi::type<void>, > boost::_mfi::mf1<void, impala::io::DiskQueue, impala::io::DiskIoMgr*>&, > boost::_bi::list0&, int) > /data/jenkins/workspace/impala-asf-master-core-tsan/Impala-Toolchain/toolchain-packages-gcc7.5.0/boost-1.61.0-p2/include/boost/bind/bind.hpp:319:9 > (unifiedbetests+0x2bc6a3d) > 18:12:42 #8 boost::_bi::bind_t<void, boost::_mfi::mf1<void, > impala::io::DiskQueue, impala::io::DiskIoMgr*>, > boost::_bi::list2<boost::_bi::value<impala::io::DiskQueue*>, > boost::_bi::value<impala::io::DiskIoMgr*> > >::operator()() > /data/jenkins/workspace/impala-asf-master-core-tsan/Impala-Toolchain/toolchain-packages-gcc7.5.0/boost-1.61.0-p2/include/boost/bind/bind.hpp:1222:16 > (unifiedbetests+0x2bc69a3) > 18:12:42 #9 > boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void, > boost::_mfi::mf1<void, impala::io::DiskQueue, impala::io::DiskIoMgr*>, > boost::_bi::list2<boost::_bi::value<impala::io::DiskQueue*>, > boost::_bi::value<impala::io::DiskIoMgr*> > >, > void>::invoke(boost::detail::function::function_buffer&) > /data/jenkins/workspace/impala-asf-master-core-tsan/Impala-Toolchain/toolchain-packages-gcc7.5.0/boost-1.61.0-p2/include/boost/function/function_template.hpp:159:11 > (unifiedbetests+0x2bc6741) > 18:12:42 #10 boost::function0<void>::operator()() const > /data/jenkins/workspace/impala-asf-master-core-tsan/Impala-Toolchain/toolchain-packages-gcc7.5.0/boost-1.61.0-p2/include/boost/function/function_template.hpp:770:14 > (unifiedbetests+0x2cb5721) > 18:12:42 #11 impala::Thread::SuperviseThread(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 ()>, impala::ThreadDebugInfo const*, > impala::Promise<long, (impala::PromiseMode)0>*) > /data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/be/src/util/thread.cc:360:3 > (unifiedbetests+0x3668abb) > 18:12:42 #12 void > boost::_bi::list5<boost::_bi::value<std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> > >, > 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 (*)(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 ()>, impala::ThreadDebugInfo const*, > impala::Promise<long, (impala::PromiseMode)0>*), > boost::_bi::list0>(boost::_bi::type<void>, void > (*&)(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 > ()>, impala::ThreadDebugInfo const*, impala::Promise<long, > (impala::PromiseMode)0>*), boost::_bi::list0&, int) > /data/jenkins/workspace/impala-asf-master-core-tsan/Impala-Toolchain/toolchain-packages-gcc7.5.0/boost-1.61.0-p2/include/boost/bind/bind.hpp:531:9 > (unifiedbetests+0x367091c) > 18:12:42 #13 boost::_bi::bind_t<void, void > (*)(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 > ()>, impala::ThreadDebugInfo const*, impala::Promise<long, > (impala::PromiseMode)0>*), > boost::_bi::list5<boost::_bi::value<std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> > >, > 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-asf-master-core-tsan/Impala-Toolchain/toolchain-packages-gcc7.5.0/boost-1.61.0-p2/include/boost/bind/bind.hpp:1222:16 > (unifiedbetests+0x3670833) > 18:12:42 #14 boost::detail::thread_data<boost::_bi::bind_t<void, void > (*)(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 > ()>, impala::ThreadDebugInfo const*, impala::Promise<long, > (impala::PromiseMode)0>*), > boost::_bi::list5<boost::_bi::value<std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> > >, > 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-asf-master-core-tsan/Impala-Toolchain/toolchain-packages-gcc7.5.0/boost-1.61.0-p2/include/boost/thread/detail/thread.hpp:116:17 > (unifiedbetests+0x3670520) > 18:12:42 #15 thread_proxy <null> (unifiedbetests+0x390d7b1) > 18:12:42 > 18:12:42 Previous read of size 4 at 0x7b8800013488 by main thread (mutexes: > write M1074807285127132208): > 18:12:42 #0 impala::io::DiskIoMgrTest_MetricsOfWriteIoError_Test::TestBody() > /data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/be/src/runtime/io/disk-io-mgr-test.cc:1765:12 > (unifiedbetests+0x1f31471) > 18:12:42 #1 void > testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, > void>(testing::Test*, void (testing::Test::*)(), char const*) <null> > (unifiedbetests+0x4d17169) > 18:12:42 #2 __libc_start_main <null> (libc.so.6+0x21c04) > 18:12:42 > 18:12:42 Location is heap block of size 5264 at 0x7b8800012000 allocated by > main thread: > 18:12:42 #0 operator new(unsigned long) > /mnt/source/llvm/llvm-5.0.1.src-p2/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:44 > (unifiedbetests+0x1d598d6) > 18:12:42 #1 > testing::internal::TestFactoryImpl<impala::io::DiskIoMgrTest_MetricsOfWriteIoError_Test>::CreateTest() > > /data/jenkins/workspace/impala-asf-master-core-tsan/Impala-Toolchain/toolchain-packages-gcc7.5.0/gtest-1.6.0/include/gtest/internal/gtest-internal.h:529:39 > (unifiedbetests+0x1f3c349) > 18:12:42 #2 testing::Test* > testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::TestFactoryBase, > testing::Test*>(testing::internal::TestFactoryBase*, testing::Test* > (testing::internal::TestFactoryBase::*)(), char const*) <null> > (unifiedbetests+0x4d172d9) > 18:12:42 #3 __libc_start_main <null> (libc.so.6+0x21c04) > 18:12:42 > 18:12:42 Mutex M1074807285127132208 is already destroyed. > 18:12:42 > 18:12:42 Thread T186 (tid=5211, running) created by main thread at: > 18:12:42 #0 pthread_create > /mnt/source/llvm/llvm-5.0.1.src-p2/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:889 > (unifiedbetests+0x1ccd426) > 18:12:42 #1 boost::thread::start_thread_noexcept() <null> > (unifiedbetests+0x390c808) > 18:12:42 #2 boost::thread::thread<void (*)(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 ()>, impala::ThreadDebugInfo const*, > impala::Promise<long, (impala::PromiseMode)0>*), > std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::__cxx11::basic_string<char, std::char_traits<char>, > std::allocator<char> >, boost::function<void ()>, impala::ThreadDebugInfo*, > impala::Promise<long, (impala::PromiseMode)0>*>(void > (*)(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 > ()>, impala::ThreadDebugInfo const*, impala::Promise<long, > (impala::PromiseMode)0>*), std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> >, > 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-asf-master-core-tsan/Impala-Toolchain/toolchain-packages-gcc7.5.0/boost-1.61.0-p2/include/boost/thread/detail/thread.hpp:420:13 > (unifiedbetests+0x366b2a4) > 18:12:42 #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-asf-master-core-tsan/repos/Impala/be/src/util/thread.cc:317:13 > (unifiedbetests+0x3668431) > 18:12:42 #4 impala::Status impala::Thread::Create<void > (impala::io::DiskQueue::*)(impala::io::DiskIoMgr*), impala::io::DiskQueue*, > impala::io::DiskIoMgr*>(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&, void (impala::io::DiskQueue::* const&)(impala::io::DiskIoMgr*), > impala::io::DiskQueue* const&, impala::io::DiskIoMgr* const&, > std::unique_ptr<impala::Thread, std::default_delete<impala::Thread> >*, bool) > /data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/be/src/util/thread.h:89:12 > (unifiedbetests+0x2bbf3c7) > 18:12:42 #5 impala::io::DiskIoMgr::Init() > /data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/be/src/runtime/io/disk-io-mgr.cc:370:7 > (unifiedbetests+0x2bbb033) > 18:12:42 #6 impala::io::DiskIoMgrTest_MetricsOfWriteIoError_Test::TestBody() > /data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/be/src/runtime/io/disk-io-mgr-test.cc:1750:3 > (unifiedbetests+0x1f310f0) > 18:12:42 #7 void > testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, > void>(testing::Test*, void (testing::Test::*)(), char const*) <null> > (unifiedbetests+0x4d17169) > 18:12:42 #8 __libc_start_main <null> (libc.so.6+0x21c04) > 18:12:42 > 18:12:42 SUMMARY: ThreadSanitizer: data race > /data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/be/src/runtime/io/disk-io-mgr-test.cc:1757:25 > in > impala::io::DiskIoMgrTest_MetricsOfWriteIoError_Test::TestBody()::$_4::operator()(impala::Status > const&) const > 18:12:42 ================== > 18:12:42 Traceback (most recent call last): > 18:12:42 File > "/data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/bin/junitxml_prune_notrun.py", > line 71, in <module> > 18:12:42 if __name__ == "__main__": main() > 18:12:42 File > "/data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/bin/junitxml_prune_notrun.py", > line 68, in main > 18:12:42 junitxml_prune_notrun(options.filename) > 18:12:42 File > "/data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/bin/junitxml_prune_notrun.py", > line 31, in junitxml_prune_notrun > 18:12:42 root = tree.parse(junitxml_filename) > 18:12:42 File "/usr/lib64/python2.7/xml/etree/ElementTree.py", line 647, in > parse > 18:12:42 source = open(source, "rb") > 18:12:42 IOError: [Errno 2] No such file or directory: > '/data/jenkins/workspace/impala-asf-master-core-tsan/repos/Impala/logs/be_tests/disk-io-mgr-test.xml' > -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-all-unsubscr...@impala.apache.org For additional commands, e-mail: issues-all-h...@impala.apache.org