[ 
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

Reply via email to