Quanlong Huang created IMPALA-14289:
---------------------------------------

             Summary: 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: Quanlong Huang


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]


Reply via email to