[
https://issues.apache.org/jira/browse/IMPALA-14289?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18013189#comment-18013189
]
Quanlong Huang commented on IMPALA-14289:
-----------------------------------------
Hi [~rizaon], assigning this to you since you've started looking into it. Feel
free to reassign it when appropriate.
> Data race in accessing all_ranges_started_ of HdfsScanNode
> ----------------------------------------------------------
>
> Key: IMPALA-14289
> URL: https://issues.apache.org/jira/browse/IMPALA-14289
> Project: IMPALA
> Issue Type: Bug
> Components: Backend
> Reporter: Quanlong Huang
> Assignee: Riza Suminto
> Priority: Critical
>
> Saw a TSAN test failure on commit
> [09a6f0e6c|https://github.com/apache/impala/commit/09a6f0e6cd912f573f0d8950abf40f498385c628].
> {noformat}
> WARNING: ThreadSanitizer: data race (pid=3756218)
> Write of size 1 at 0x7b7000295740 by thread T315 (mutexes: write
> M673142390284441360):
> #0 impala::HdfsScanNode::ScannerThread(bool, long)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node.cc:438:27
> (impalad+0x329ebef)
> #1
> impala::HdfsScanNode::ThreadTokenAvailableCb(impala::ThreadResourcePool*)::$_3::operator()()
> const
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node.cc:341:13
> (impalad+0x32a0c76)
> #2
> boost::detail::function::void_function_obj_invoker0<impala::HdfsScanNode::ThreadTokenAvailableCb(impala::ThreadResourcePool*)::$_3,
> 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
> (impalad+0x32a0a19)
> #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
> (impalad+0x2847cf1)
> #4 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 ()> 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:361:3
> (impalad+0x30285e5)
> #5 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 ()> const&, 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
> ()> 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
> (impalad+0x3031817)
> #6 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 ()> const&, 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-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/bind/bind.hpp:1294:16
> (impalad+0x3031733)
> #7 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
> ()> const&, 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-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
> (impalad+0x3030ee0)
> #8 thread_proxy
> /mnt/source/boost/boost_1_74_0-p1/libs/thread/src/pthread/thread.cpp:179:37
> (impalad+0x3e5d216)
> Previous read of size 1 at 0x7b7000295740 by thread T331 (mutexes: write
> M657660888607030328):
> #0
> impala::HdfsScanNode::ThreadTokenAvailableCb(impala::ThreadResourcePool*)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node.cc:305:19
> (impalad+0x329d9ba)
> #1 boost::_mfi::mf1<void, impala::HdfsScanNode,
> impala::ThreadResourcePool*>::operator()(impala::HdfsScanNode*,
> impala::ThreadResourcePool*) const
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/bind/mem_fn_template.hpp:165:29
> (impalad+0x32a1ebd)
> #2 void boost::_bi::list2<boost::_bi::value<impala::HdfsScanNode*>,
> boost::arg<1> >::operator()<boost::_mfi::mf1<void, impala::HdfsScanNode,
> impala::ThreadResourcePool*>,
> boost::_bi::rrlist1<impala::ThreadResourcePool*> >(boost::_bi::type<void>,
> boost::_mfi::mf1<void, impala::HdfsScanNode, impala::ThreadResourcePool*>&,
> boost::_bi::rrlist1<impala::ThreadResourcePool*>&, 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:319:9
> (impalad+0x32a1e0a)
> #3 void boost::_bi::bind_t<void, boost::_mfi::mf1<void,
> impala::HdfsScanNode, impala::ThreadResourcePool*>,
> boost::_bi::list2<boost::_bi::value<impala::HdfsScanNode*>, boost::arg<1> >
> >::operator()<impala::ThreadResourcePool*>(impala::ThreadResourcePool*&&)
> /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:1306:16
> (impalad+0x32a1d48)
> #4
> boost::detail::function::void_function_obj_invoker1<boost::_bi::bind_t<void,
> boost::_mfi::mf1<void, impala::HdfsScanNode, impala::ThreadResourcePool*>,
> boost::_bi::list2<boost::_bi::value<impala::HdfsScanNode*>, boost::arg<1> >
> >, void,
> impala::ThreadResourcePool*>::invoke(boost::detail::function::function_buffer&,
> impala::ThreadResourcePool*)
> /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
> (impalad+0x32a1ac3)
> #5 boost::function1<void,
> impala::ThreadResourcePool*>::operator()(impala::ThreadResourcePool*) 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
> (impalad+0x2929299)
> #6 impala::ThreadResourcePool::InvokeCallbacks()
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/thread-resource-mgr.cc:106:9
> (impalad+0x2928995)
> #7 impala::ThreadResourcePool::ReleaseThreadToken(bool, bool)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/thread-resource-mgr.cc:154:24
> (impalad+0x2928c2b)
> #8 impala::HdfsScanNode::ScannerThread(bool, long)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node.cc:461:36
> (impalad+0x329ed18)
> #9
> impala::HdfsScanNode::ThreadTokenAvailableCb(impala::ThreadResourcePool*)::$_3::operator()()
> const
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node.cc:341:13
> (impalad+0x32a0c76)
> #10
> boost::detail::function::void_function_obj_invoker0<impala::HdfsScanNode::ThreadTokenAvailableCb(impala::ThreadResourcePool*)::$_3,
> 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
> (impalad+0x32a0a19)
> #11 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
> (impalad+0x2847cf1)
> #12 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 ()> 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:361:3
> (impalad+0x30285e5)
> #13 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 ()> const&, 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
> ()> 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
> (impalad+0x3031817)
> #14 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 ()> const&, 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-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/bind/bind.hpp:1294:16
> (impalad+0x3031733)
> #15 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
> ()> const&, 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-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
> (impalad+0x3030ee0)
> #16 thread_proxy
> /mnt/source/boost/boost_1_74_0-p1/libs/thread/src/pthread/thread.cpp:179:37
> (impalad+0x3e5d216)
> Location is heap block of size 1880 at 0x7b7000295000 allocated by thread
> T281:
> #0 operator new(unsigned long) <null> (impalad+0x217d43a)
> #1 impala::HdfsScanPlanNode::CreateExecNode(impala::RuntimeState*,
> impala::ExecNode**) const
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node-base.cc:453:15
> (impalad+0x31427b6)
> #2 impala::ExecNode::CreateTree(impala::RuntimeState*, impala::PlanNode
> const&, impala::DescriptorTbl const&, impala::ExecNode**)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/exec-node.cc:369:3
> (impalad+0x31265ab)
> #3 impala::FragmentInstanceState::Prepare()
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/fragment-instance-state.cc:205:3
> (impalad+0x299db55)
> #4 impala::FragmentInstanceState::Exec()
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/fragment-instance-state.cc:95:19
> (impalad+0x299cfda)
> #5 impala::QueryState::ExecFInstance(impala::FragmentInstanceState*)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/query-state.cc:1013:24
> (impalad+0x28c5585)
> #6 impala::QueryState::StartFInstances()::$_15::operator()() const
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/query-state.cc:918:37
> (impalad+0x28ca152)
> #7
> boost::detail::function::void_function_obj_invoker0<impala::QueryState::StartFInstances()::$_15,
> 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
> (impalad+0x28c9f09)
> #8 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
> (impalad+0x2847cf1)
> #9 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 ()> 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:361:3
> (impalad+0x30285e5)
> #10 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 ()> const&, 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
> ()> 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
> (impalad+0x3031817)
> #11 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 ()> const&, 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-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/bind/bind.hpp:1294:16
> (impalad+0x3031733)
> #12 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
> ()> const&, 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-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
> (impalad+0x3030ee0)
> #13 thread_proxy
> /mnt/source/boost/boost_1_74_0-p1/libs/thread/src/pthread/thread.cpp:179:37
> (impalad+0x3e5d216)
> Mutex M673142390284441360 is already destroyed.
> Mutex M657660888607030328 is already destroyed.
> Thread T315 (tid=4117763, running) created by thread T281 at:
> #0 pthread_create <null> (impalad+0x211f7b3)
> #1 boost::thread::start_thread_noexcept()
> /mnt/source/boost/boost_1_74_0-p1/libs/thread/src/pthread/thread.cpp:263:39
> (impalad+0x3e5c51d)
> #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 ()> const&, 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
> ()> const&, 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-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
> (impalad+0x302bc74)
> #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:318:13
> (impalad+0x3027f25)
> #4 impala::Status
> impala::Thread::Create<impala::HdfsScanNode::ThreadTokenAvailableCb(impala::ThreadResourcePool*)::$_3>(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::HdfsScanNode::ThreadTokenAvailableCb(impala::ThreadResourcePool*)::$_3
> 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
> (impalad+0x329e58d)
> #5
> impala::HdfsScanNode::ThreadTokenAvailableCb(impala::ThreadResourcePool*)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node.cc:344:14
> (impalad+0x329dbbf)
> #6
> impala::HdfsScanNode::AddDiskIoRanges(std::vector<impala::io::ScanRange*,
> std::allocator<impala::io::ScanRange*> > const&, impala::EnqueueLocation)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node.cc:209:24
> (impalad+0x329e1a0)
> #7 impala::HdfsScanNodeBase::AddDiskIoRanges(impala::HdfsFileDesc const*,
> impala::EnqueueLocation)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node-base.h:548:12
> (impalad+0x325b1db)
> #8 impala::HdfsTextScanner::IssueInitialRanges(impala::HdfsScanNodeBase*,
> std::vector<impala::HdfsFileDesc*, std::allocator<impala::HdfsFileDesc*> >
> const&)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/text/hdfs-text-scanner.cc:113:9
> (impalad+0x3891d3b)
> #9
> impala::HdfsScanNodeBase::IssueInitialScanRanges(impala::RuntimeState*)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node-base.cc:749:9
> (impalad+0x31461a7)
> #10 impala::HdfsScanNode::GetNext(impala::RuntimeState*,
> impala::RowBatch*, bool*)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node.cc:92:21
> (impalad+0x329cc4c)
> #11 impala::FragmentInstanceState::ExecInternal()
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/fragment-instance-state.cc:472:7
> (impalad+0x299f2b7)
> #12 impala::FragmentInstanceState::Exec()
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/fragment-instance-state.cc:115:14
> (impalad+0x299d16d)
> #13 impala::QueryState::ExecFInstance(impala::FragmentInstanceState*)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/query-state.cc:1013:24
> (impalad+0x28c5585)
> #14 impala::QueryState::StartFInstances()::$_15::operator()() const
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/query-state.cc:918:37
> (impalad+0x28ca152)
> #15
> boost::detail::function::void_function_obj_invoker0<impala::QueryState::StartFInstances()::$_15,
> 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
> (impalad+0x28c9f09)
> #16 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
> (impalad+0x2847cf1)
> #17 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 ()> 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:361:3
> (impalad+0x30285e5)
> #18 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 ()> const&, 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
> ()> 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
> (impalad+0x3031817)
> #19 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 ()> const&, 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-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/bind/bind.hpp:1294:16
> (impalad+0x3031733)
> #20 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
> ()> const&, 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-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
> (impalad+0x3030ee0)
> #21 thread_proxy
> /mnt/source/boost/boost_1_74_0-p1/libs/thread/src/pthread/thread.cpp:179:37
> (impalad+0x3e5d216)
> Thread T331 (tid=4117748, finished) created by thread T281 at:
> #0 pthread_create <null> (impalad+0x211f7b3)
> #1 boost::thread::start_thread_noexcept()
> /mnt/source/boost/boost_1_74_0-p1/libs/thread/src/pthread/thread.cpp:263:39
> (impalad+0x3e5c51d)
> #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 ()> const&, 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
> ()> const&, 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-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
> (impalad+0x302bc74)
> #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:318:13
> (impalad+0x3027f25)
> #4 impala::Status
> impala::Thread::Create<impala::HdfsScanNode::ThreadTokenAvailableCb(impala::ThreadResourcePool*)::$_3>(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::HdfsScanNode::ThreadTokenAvailableCb(impala::ThreadResourcePool*)::$_3
> 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
> (impalad+0x329e58d)
> #5
> impala::HdfsScanNode::ThreadTokenAvailableCb(impala::ThreadResourcePool*)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node.cc:344:14
> (impalad+0x329dbbf)
> #6
> impala::HdfsScanNode::AddDiskIoRanges(std::vector<impala::io::ScanRange*,
> std::allocator<impala::io::ScanRange*> > const&, impala::EnqueueLocation)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node.cc:209:24
> (impalad+0x329e1a0)
> #7 impala::HdfsScanNodeBase::AddDiskIoRanges(impala::HdfsFileDesc const*,
> impala::EnqueueLocation)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node-base.h:548:12
> (impalad+0x325b1db)
> #8 impala::HdfsTextScanner::IssueInitialRanges(impala::HdfsScanNodeBase*,
> std::vector<impala::HdfsFileDesc*, std::allocator<impala::HdfsFileDesc*> >
> const&)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/text/hdfs-text-scanner.cc:113:9
> (impalad+0x3891d3b)
> #9
> impala::HdfsScanNodeBase::IssueInitialScanRanges(impala::RuntimeState*)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node-base.cc:749:9
> (impalad+0x31461a7)
> #10 impala::HdfsScanNode::GetNext(impala::RuntimeState*,
> impala::RowBatch*, bool*)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node.cc:92:21
> (impalad+0x329cc4c)
> #11 impala::FragmentInstanceState::ExecInternal()
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/fragment-instance-state.cc:472:7
> (impalad+0x299f2b7)
> #12 impala::FragmentInstanceState::Exec()
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/fragment-instance-state.cc:115:14
> (impalad+0x299d16d)
> #13 impala::QueryState::ExecFInstance(impala::FragmentInstanceState*)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/query-state.cc:1013:24
> (impalad+0x28c5585)
> #14 impala::QueryState::StartFInstances()::$_15::operator()() const
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/query-state.cc:918:37
> (impalad+0x28ca152)
> #15
> boost::detail::function::void_function_obj_invoker0<impala::QueryState::StartFInstances()::$_15,
> 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
> (impalad+0x28c9f09)
> #16 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
> (impalad+0x2847cf1)
> #17 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 ()> 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:361:3
> (impalad+0x30285e5)
> #18 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 ()> const&, 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
> ()> 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
> (impalad+0x3031817)
> #19 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 ()> const&, 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-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/bind/bind.hpp:1294:16
> (impalad+0x3031733)
> #20 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
> ()> const&, 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-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
> (impalad+0x3030ee0)
> #21 thread_proxy
> /mnt/source/boost/boost_1_74_0-p1/libs/thread/src/pthread/thread.cpp:179:37
> (impalad+0x3e5d216)
> Thread T281 (tid=4117630, running) created by thread T248 at:
> #0 pthread_create <null> (impalad+0x211f7b3)
> #1 boost::thread::start_thread_noexcept()
> /mnt/source/boost/boost_1_74_0-p1/libs/thread/src/pthread/thread.cpp:263:39
> (impalad+0x3e5c51d)
> #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 ()> const&, 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
> ()> const&, 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-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
> (impalad+0x302bc74)
> #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:318:13
> (impalad+0x3027f25)
> #4 impala::Status
> impala::Thread::Create<impala::QueryState::StartFInstances()::$_15>(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::QueryState::StartFInstances()::$_15 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
> (impalad+0x28c4eaa)
> #5 impala::QueryState::StartFInstances()
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/query-state.cc:917:11
> (impalad+0x28c47c4)
> #6 impala::QueryExecMgr::ExecuteQueryHelper(impala::QueryState*)
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/runtime/query-exec-mgr.cc:170:7
> (impalad+0x28b18a9)
> #7 boost::_mfi::mf1<void, impala::QueryExecMgr,
> impala::QueryState*>::operator()(impala::QueryExecMgr*, impala::QueryState*)
> const
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/bind/mem_fn_template.hpp:165:29
> (impalad+0x28ba21d)
> #8 void boost::_bi::list2<boost::_bi::value<impala::QueryExecMgr*>,
> boost::_bi::value<impala::QueryState*> >::operator()<boost::_mfi::mf1<void,
> impala::QueryExecMgr, impala::QueryState*>,
> boost::_bi::list0>(boost::_bi::type<void>, boost::_mfi::mf1<void,
> impala::QueryExecMgr, impala::QueryState*>&, 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:319:9
> (impalad+0x28ba16a)
> #9 boost::_bi::bind_t<void, boost::_mfi::mf1<void, impala::QueryExecMgr,
> impala::QueryState*>,
> boost::_bi::list2<boost::_bi::value<impala::QueryExecMgr*>,
> boost::_bi::value<impala::QueryState*> > >::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
> (impalad+0x28ba0d3)
> #10
> boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void,
> boost::_mfi::mf1<void, impala::QueryExecMgr, impala::QueryState*>,
> boost::_bi::list2<boost::_bi::value<impala::QueryExecMgr*>,
> boost::_bi::value<impala::QueryState*> > >,
> 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
> (impalad+0x28b9e11)
> #11 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
> (impalad+0x2847cf1)
> #12 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 ()> 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:361:3
> (impalad+0x30285e5)
> #13 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 ()> const&, 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
> ()> 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
> (impalad+0x3031817)
> #14 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 ()> const&, 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-cdw-master-staging-core-tsan/Impala-Toolchain/toolchain-packages-gcc10.4.0/boost-1.74.0-p1/include/boost/bind/bind.hpp:1294:16
> (impalad+0x3031733)
> #15 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
> ()> const&, 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-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
> (impalad+0x3030ee0)
> #16 thread_proxy
> /mnt/source/boost/boost_1_74_0-p1/libs/thread/src/pthread/thread.cpp:179:37
> (impalad+0x3e5d216)
> SUMMARY: ThreadSanitizer: data race
> /data/jenkins/workspace/impala-cdw-master-staging-core-tsan/repos/Impala/be/src/exec/hdfs-scan-node.cc:438:27
> in impala::HdfsScanNode::ScannerThread(bool, long)
> =================={noformat}
> The read/write is on all_ranges_started_ of HdfsScanNode:
> {code:cpp}
> 255 void HdfsScanNode::ThreadTokenAvailableCb(ThreadResourcePool* pool) {
> ...
> 304 // Cases 1, 2, 3.
> 305 if (done() || all_ranges_started_ || // <----- Read here
> 306 num_active_scanner_threads >=
> shared_state_->progress().remaining()) {
> 307 break;
> 308 }
> ...
> 368 void HdfsScanNode::ScannerThread(bool first_thread, int64_t
> scanner_thread_reservation) {
> ...
> 433 if (scan_range == nullptr && remaining_scan_range_submissions == 0) {
> 434 unique_lock<timed_mutex> l(lock_);
> 435 // All ranges have been queued and DiskIoMgr has no more new ranges
> for this scan
> 436 // node to process. This means that every range is either done or
> being processed by
> 437 // another thread.
> 438 all_ranges_started_ = true; // <---- Write here
> 439 break;
> 440 }
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]