XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • Impala 4.0.0
    • Backend
    • None
    • ghx-label-12

    Description

      hdfs-bulk-ops usage of a local connection cache (HdfsFsCache::HdfsFsMap) has a data race:

       WARNING: ThreadSanitizer: data race (pid=23205)
        Write of size 8 at 0x7b24005642d8 by thread T47:
          #0 boost::unordered::detail::table_impl<boost::unordered::detail::map<std::allocator<std::pair<std::string const, hdfs_internal*> >, std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string> > >::add_node(boost::unordered::detail::node_constructor<std::allocator<boost::unordered::detail::ptr_node<std::pair<std::string const, hdfs_internal*> > > >&, unsigned long) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/unique.hpp:329:26 (impalad+0x1f93832)
          #1 std::pair<boost::unordered::iterator_detail::iterator<boost::unordered::detail::ptr_node<std::pair<std::string const, hdfs_internal*> > >, bool> boost::unordered::detail::table_impl<boost::unordered::detail::map<std::allocator<std::pair<std::string const, hdfs_internal*> >, std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string> > >::emplace_impl<std::pair<std::string const, hdfs_internal*> >(std::string const&, std::pair<std::string const, hdfs_internal*>&&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/unique.hpp:420:41 (impalad+0x1f933ed)
          #2 std::pair<boost::unordered::iterator_detail::iterator<boost::unordered::detail::ptr_node<std::pair<std::string const, hdfs_internal*> > >, bool> boost::unordered::detail::table_impl<boost::unordered::detail::map<std::allocator<std::pair<std::string const, hdfs_internal*> >, std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string> > >::emplace<std::pair<std::string const, hdfs_internal*> >(std::pair<std::string const, hdfs_internal*>&&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/unique.hpp:384:20 (impalad+0x1f932d1)
          #3 std::pair<boost::unordered::iterator_detail::iterator<boost::unordered::detail::ptr_node<std::pair<std::string const, hdfs_internal*> > >, bool> boost::unordered::unordered_map<std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string>, std::allocator<std::pair<std::string const, hdfs_internal*> > >::emplace<std::pair<std::string const, hdfs_internal*> >(std::pair<std::string const, hdfs_internal*>&&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/unordered_map.hpp:241:27 (impalad+0x1f93238)
          #4 boost::unordered::unordered_map<std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string>, std::allocator<std::pair<std::string const, hdfs_internal*> > >::insert(std::pair<std::string const, hdfs_internal*>&&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/unordered_map.hpp:390:26 (impalad+0x1f92038)
          #5 impala::HdfsFsCache::GetConnection(std::string const&, hdfs_internal**, boost::unordered::unordered_map<std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string>, std::allocator<std::pair<std::string const, hdfs_internal*> > >*) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/runtime/hdfs-fs-cache.cc:115:18 (impalad+0x1f916b3)
          #6 impala::HdfsOp::Execute() const /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/hdfs-bulk-ops.cc:84:55 (impalad+0x23444d5)
          #7 HdfsThreadPoolHelper(int, impala::HdfsOp const&) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/hdfs-bulk-ops.cc:137:6 (impalad+0x2344ea9)
          #8 boost::detail::function::void_function_invoker2<void (*)(int, impala::HdfsOp const&), void, int, impala::HdfsOp const&>::invoke(boost::detail::function::function_buffer&, int, impala::HdfsOp const&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/function/function_template.hpp:118:11 (impalad+0x2345e80)
          #9 boost::function2<void, int, impala::HdfsOp const&>::operator()(int, impala::HdfsOp const&) const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/function/function_template.hpp:770:14 (impalad+0x1f883be)
          #10 impala::ThreadPool<impala::HdfsOp>::WorkerThread(int) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread-pool.h:166:9 (impalad+0x1f874e5)
          #11 boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>::operator()(impala::ThreadPool<impala::HdfsOp>*, int) const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/mem_fn_template.hpp:165:29 (impalad+0x1f87b7d)
          #12 void boost::_bi::list2<boost::_bi::value<impala::ThreadPool<impala::HdfsOp>*>, boost::_bi::value<int> >::operator()<boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>, boost::_bi::list0>(boost::_bi::type<void>, boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>&, boost::_bi::list0&, int) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:319:9 (impalad+0x1f87abc)
          #13 boost::_bi::bind_t<void, boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>, boost::_bi::list2<boost::_bi::value<impala::ThreadPool<impala::HdfsOp>*>, boost::_bi::value<int> > >::operator()() /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:1222:16 (impalad+0x1f87a23)
          #14 boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void, boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>, boost::_bi::list2<boost::_bi::value<impala::ThreadPool<impala::HdfsOp>*>, boost::_bi::value<int> > >, void>::invoke(boost::detail::function::function_buffer&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/function/function_template.hpp:159:11 (impalad+0x1f877c1)
          #15 boost::function0<void>::operator()() const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/function/function_template.hpp:770:14 (impalad+0x1e192b1)
          #16 impala::Thread::SuperviseThread(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread.cc:360:3 (impalad+0x23df196)
          #17 void boost::_bi::list5<boost::_bi::value<std::string>, boost::_bi::value<std::string>, boost::_bi::value<boost::function<void ()> >, boost::_bi::value<impala::ThreadDebugInfo*>, boost::_bi::value<impala::Promise<long, (impala::PromiseMode)0>*> >::operator()<void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list0>(boost::_bi::type<void>, void (*&)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list0&, int) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:531:9 (impalad+0x23e735c)
          #18 boost::_bi::bind_t<void, void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list5<boost::_bi::value<std::string>, boost::_bi::value<std::string>, 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-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:1222:16 (impalad+0x23e7273)
          #19 boost::detail::thread_data<boost::_bi::bind_t<void, void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list5<boost::_bi::value<std::string>, boost::_bi::value<std::string>, 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-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/thread/detail/thread.hpp:116:17 (impalad+0x23e6f60)
          #20 thread_proxy <null> (impalad+0x30e44f9)
      
      
        Previous read of size 8 at 0x7b24005642d8 by thread T48:
          #0 boost::unordered::detail::table<boost::unordered::detail::map<std::allocator<std::pair<std::string const, hdfs_internal*> >, std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string> > >::get_previous_start(unsigned long) const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/table.hpp:254:46 (impalad+0x1f9313b)
          #1 boost::unordered::detail::table<boost::unordered::detail::map<std::allocator<std::pair<std::string const, hdfs_internal*> >, std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string> > >::begin(unsigned long) const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/table.hpp:265:33 (impalad+0x1f92fc4)
          #2 boost::unordered::iterator_detail::iterator<boost::unordered::detail::ptr_node<std::pair<std::string const, hdfs_internal*> > > boost::unordered::detail::table_impl<boost::unordered::detail::map<std::allocator<std::pair<std::string const, hdfs_internal*> >, std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string> > >::find_node_impl<std::string, std::equal_to<std::string> >(unsigned long, std::string const&, std::equal_to<std::string> const&) const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/unique.hpp:244:32 (impalad+0x1f92e40)
          #3 boost::unordered::detail::table<boost::unordered::detail::map<std::allocator<std::pair<std::string const, hdfs_internal*> >, std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string> > >::find_node(std::string const&) const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/table.hpp:794:17 (impalad+0x1f92dcf)
          #4 boost::unordered::unordered_map<std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string>, std::allocator<std::pair<std::string const, hdfs_internal*> > >::find(std::string const&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/unordered_map.hpp:1213:23 (impalad+0x1f91ee0)
          #5 impala::HdfsFsCache::GetConnection(std::string const&, hdfs_internal**, boost::unordered::unordered_map<std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string>, std::allocator<std::pair<std::string const, hdfs_internal*> > >*) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/runtime/hdfs-fs-cache.cc:80:51 (impalad+0x1f914c3)
          #6 impala::HdfsOp::Execute() const /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/hdfs-bulk-ops.cc:84:55 (impalad+0x23444d5)
          #7 HdfsThreadPoolHelper(int, impala::HdfsOp const&) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/hdfs-bulk-ops.cc:137:6 (impalad+0x2344ea9)
          #8 boost::detail::function::void_function_invoker2<void (*)(int, impala::HdfsOp const&), void, int, impala::HdfsOp const&>::invoke(boost::detail::function::function_buffer&, int, impala::HdfsOp const&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/function/function_template.hpp:118:11 (impalad+0x2345e80)
          #9 boost::function2<void, int, impala::HdfsOp const&>::operator()(int, impala::HdfsOp const&) const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/function/function_template.hpp:770:14 (impalad+0x1f883be)
          #10 impala::ThreadPool<impala::HdfsOp>::WorkerThread(int) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread-pool.h:166:9 (impalad+0x1f874e5)
          #11 boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>::operator()(impala::ThreadPool<impala::HdfsOp>*, int) const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/mem_fn_template.hpp:165:29 (impalad+0x1f87b7d)
          #12 void boost::_bi::list2<boost::_bi::value<impala::ThreadPool<impala::HdfsOp>*>, boost::_bi::value<int> >::operator()<boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>, boost::_bi::list0>(boost::_bi::type<void>, boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>&, boost::_bi::list0&, int) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:319:9 (impalad+0x1f87abc)
          #13 boost::_bi::bind_t<void, boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>, boost::_bi::list2<boost::_bi::value<impala::ThreadPool<impala::HdfsOp>*>, boost::_bi::value<int> > >::operator()() /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:1222:16 (impalad+0x1f87a23)
          #14 boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void, boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>, boost::_bi::list2<boost::_bi::value<impala::ThreadPool<impala::HdfsOp>*>, boost::_bi::value<int> > >, void>::invoke(boost::detail::function::function_buffer&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/function/function_template.hpp:159:11 (impalad+0x1f877c1)
          #15 boost::function0<void>::operator()() const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/function/function_template.hpp:770:14 (impalad+0x1e192b1)
          #16 impala::Thread::SuperviseThread(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread.cc:360:3 (impalad+0x23df196)
          #17 void boost::_bi::list5<boost::_bi::value<std::string>, boost::_bi::value<std::string>, boost::_bi::value<boost::function<void ()> >, boost::_bi::value<impala::ThreadDebugInfo*>, boost::_bi::value<impala::Promise<long, (impala::PromiseMode)0>*> >::operator()<void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list0>(boost::_bi::type<void>, void (*&)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list0&, int) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:531:9 (impalad+0x23e735c)
          #18 boost::_bi::bind_t<void, void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list5<boost::_bi::value<std::string>, boost::_bi::value<std::string>, 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-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:1222:16 (impalad+0x23e7273)
          #19 boost::detail::thread_data<boost::_bi::bind_t<void, void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list5<boost::_bi::value<std::string>, boost::_bi::value<std::string>, 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-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/thread/detail/thread.hpp:116:17 (impalad+0x23e6f60)
          #20 thread_proxy <null> (impalad+0x30e44f9)
      
        Location is heap block of size 136 at 0x7b24005642a0 allocated by thread T337:
          #0 operator new(unsigned long) /mnt/source/llvm/llvm-5.0.1.src-p2/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:44 (impalad+0x19b5ed3)
          #1 __gnu_cxx::new_allocator<boost::unordered::detail::ptr_bucket>::allocate(unsigned long, void const*) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/gcc-4.9.2/lib/gcc/x86_64-unknown-linux-gnu/4.9.2/../../../../include/c++/4.9.2/ext/new_allocator.h:104:27 (impalad+0x1f0e02e)
          #2 boost::unordered::detail::allocator_traits<std::allocator<boost::unordered::detail::ptr_bucket> >::allocate(std::allocator<boost::unordered::detail::ptr_bucket>&, unsigned long) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/allocate.hpp:554:24 (impalad+0x1f0dfd2)
          #3 void boost::unordered::detail::array_constructor<std::allocator<boost::unordered::detail::ptr_bucket> >::construct<boost::unordered::detail::ptr_bucket>(boost::unordered::detail::ptr_bucket const&, unsigned long) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/allocate.hpp:1098:20 (impalad+0x1f0dd09)
          #4 boost::unordered::detail::table<boost::unordered::detail::map<std::allocator<std::pair<std::string const, hdfs_internal*> >, std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string> > >::create_buckets(unsigned long) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/table.hpp:436:25 (impalad+0x1f93f21)
          #5 boost::unordered::detail::table<boost::unordered::detail::map<std::allocator<std::pair<std::string const, hdfs_internal*> >, std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string> > >::reserve_for_insert(unsigned long) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/table.hpp:823:13 (impalad+0x1f93727)
          #6 std::pair<boost::unordered::iterator_detail::iterator<boost::unordered::detail::ptr_node<std::pair<std::string const, hdfs_internal*> > >, bool> boost::unordered::detail::table_impl<boost::unordered::detail::map<std::allocator<std::pair<std::string const, hdfs_internal*> >, std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string> > >::emplace_impl<std::pair<std::string const, hdfs_internal*> >(std::string const&, std::pair<std::string const, hdfs_internal*>&&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/unique.hpp:419:19 (impalad+0x1f933de)
          #7 std::pair<boost::unordered::iterator_detail::iterator<boost::unordered::detail::ptr_node<std::pair<std::string const, hdfs_internal*> > >, bool> boost::unordered::detail::table_impl<boost::unordered::detail::map<std::allocator<std::pair<std::string const, hdfs_internal*> >, std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string> > >::emplace<std::pair<std::string const, hdfs_internal*> >(std::pair<std::string const, hdfs_internal*>&&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/unique.hpp:384:20 (impalad+0x1f932d1)
          #8 std::pair<boost::unordered::iterator_detail::iterator<boost::unordered::detail::ptr_node<std::pair<std::string const, hdfs_internal*> > >, bool> boost::unordered::unordered_map<std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string>, std::allocator<std::pair<std::string const, hdfs_internal*> > >::emplace<std::pair<std::string const, hdfs_internal*> >(std::pair<std::string const, hdfs_internal*>&&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/unordered_map.hpp:241:27 (impalad+0x1f93238)
          #9 boost::unordered::unordered_map<std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string>, std::allocator<std::pair<std::string const, hdfs_internal*> > >::insert(std::pair<std::string const, hdfs_internal*>&&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/unordered_map.hpp:390:26 (impalad+0x1f92038)
          #10 impala::HdfsFsCache::GetConnection(std::string const&, hdfs_internal**, boost::unordered::unordered_map<std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string>, std::allocator<std::pair<std::string const, hdfs_internal*> > >*) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/runtime/hdfs-fs-cache.cc:115:18 (impalad+0x1f916b3)
          #11 impala::DmlExecState::FinalizeHdfsInsert(impala::TFinalizeParams const&, bool, impala::HdfsTableDescriptor*, impala::RuntimeProfile*) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/runtime/dml-exec-state.cc:168:5 (impalad+0x208b147)
          #12 impala::Coordinator::FinalizeHdfsDml() /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/runtime/coordinator.cc:749:39 (impalad+0x291129a)
          #13 impala::Coordinator::Wait() /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/runtime/coordinator.cc:803:5 (impalad+0x2911aea)
          #14 impala::ClientRequestState::WaitInternal() /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/service/client-request-state.cc:875:5 (impalad+0x22148bc)
          #15 impala::ClientRequestState::Wait() /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/service/client-request-state.cc:821:19 (impalad+0x22144a6)
          #16 boost::_mfi::mf0<void, impala::ClientRequestState>::operator()(impala::ClientRequestState*) const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/mem_fn_template.hpp:49:29 (impalad+0x221dd26)
          #17 void boost::_bi::list1<boost::_bi::value<impala::ClientRequestState*> >::operator()<boost::_mfi::mf0<void, impala::ClientRequestState>, boost::_bi::list0>(boost::_bi::type<void>, boost::_mfi::mf0<void, impala::ClientRequestState>&, boost::_bi::list0&, int) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:259:9 (impalad+0x221dc7a)
          #18 boost::_bi::bind_t<void, boost::_mfi::mf0<void, impala::ClientRequestState>, boost::_bi::list1<boost::_bi::value<impala::ClientRequestState*> > >::operator()() /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:1222:16 (impalad+0x221dc03)
          #19 boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void, boost::_mfi::mf0<void, impala::ClientRequestState>, boost::_bi::list1<boost::_bi::value<impala::ClientRequestState*> > >, void>::invoke(boost::detail::function::function_buffer&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/function/function_template.hpp:159:11 (impalad+0x221d9f9)
          #20 boost::function0<void>::operator()() const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/function/function_template.hpp:770:14 (impalad+0x1e192b1)
          #21 impala::Thread::SuperviseThread(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread.cc:360:3 (impalad+0x23df196)
          #22 void boost::_bi::list5<boost::_bi::value<std::string>, boost::_bi::value<std::string>, boost::_bi::value<boost::function<void ()> >, boost::_bi::value<impala::ThreadDebugInfo*>, boost::_bi::value<impala::Promise<long, (impala::PromiseMode)0>*> >::operator()<void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list0>(boost::_bi::type<void>, void (*&)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list0&, int) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:531:9 (impalad+0x23e735c)
          #23 boost::_bi::bind_t<void, void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list5<boost::_bi::value<std::string>, boost::_bi::value<std::string>, 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-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:1222:16 (impalad+0x23e7273)
          #24 boost::detail::thread_data<boost::_bi::bind_t<void, void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list5<boost::_bi::value<std::string>, boost::_bi::value<std::string>, 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-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/thread/detail/thread.hpp:116:17 (impalad+0x23e6f60)
          #25 thread_proxy <null> (impalad+0x30e44f9)
      
        Thread T47 (tid=23506, running) created by main thread at:
          #0 pthread_create /mnt/source/llvm/llvm-5.0.1.src-p2/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:889 (impalad+0x194d8bb)
          #1 boost::thread::start_thread_noexcept() <null> (impalad+0x30e3889)
          #2 boost::thread::thread<void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), std::string, std::string, boost::function<void ()>, impala::ThreadDebugInfo*, impala::Promise<long, (impala::PromiseMode)0>*>(void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), std::string, std::string, boost::function<void ()>, impala::ThreadDebugInfo*, impala::Promise<long, (impala::PromiseMode)0>*) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/thread/detail/thread.hpp:420:13 (impalad+0x23e196b)
          #3 impala::Thread::StartThread(std::string const&, std::string const&, boost::function<void ()> const&, std::unique_ptr<impala::Thread, std::default_delete<impala::Thread> >*, bool) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread.cc:317:13 (impalad+0x23deb35)
          #4 impala::Status impala::Thread::Create<boost::_bi::bind_t<void, boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>, boost::_bi::list2<boost::_bi::value<impala::ThreadPool<impala::HdfsOp>*>, boost::_bi::value<int> > > >(std::string const&, std::string const&, boost::_bi::bind_t<void, boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>, boost::_bi::list2<boost::_bi::value<impala::ThreadPool<impala::HdfsOp>*>, boost::_bi::value<int> > > const&, std::unique_ptr<impala::Thread, std::default_delete<impala::Thread> >*, bool) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread.h:74:12 (impalad+0x1f87303)
          #5 impala::ThreadPool<impala::HdfsOp>::Init() /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread-pool.h:73:23 (impalad+0x1f7ad1f)
          #6 impala::ExecEnv::Init() /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/runtime/exec-env.cc:310:5 (impalad+0x1f74d57)
          #7 ImpaladMain(int, char**) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/service/impalad-main.cc:73:3 (impalad+0x21a5047)
          #8 main /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/service/daemon-main.cc:37:12 (impalad+0x19b860a)  Thread T48 (tid=23507, running) created by main thread at:
          #0 pthread_create /mnt/source/llvm/llvm-5.0.1.src-p2/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:889 (impalad+0x194d8bb)
          #1 boost::thread::start_thread_noexcept() <null> (impalad+0x30e3889)
          #2 boost::thread::thread<void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), std::string, std::string, boost::function<void ()>, impala::ThreadDebugInfo*, impala::Promise<long, (impala::PromiseMode)0>*>(void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), std::string, std::string, boost::function<void ()>, impala::ThreadDebugInfo*, impala::Promise<long, (impala::PromiseMode)0>*) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/thread/detail/thread.hpp:420:13 (impalad+0x23e196b)
          #3 impala::Thread::StartThread(std::string const&, std::string const&, boost::function<void ()> const&, std::unique_ptr<impala::Thread, std::default_delete<impala::Thread> >*, bool) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread.cc:317:13 (impalad+0x23deb35)
          #4 impala::Status impala::Thread::Create<boost::_bi::bind_t<void, boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>, boost::_bi::list2<boost::_bi::value<impala::ThreadPool<impala::HdfsOp>*>, boost::_bi::value<int> > > >(std::string const&, std::string const&, boost::_bi::bind_t<void, boost::_mfi::mf1<void, impala::ThreadPool<impala::HdfsOp>, int>, boost::_bi::list2<boost::_bi::value<impala::ThreadPool<impala::HdfsOp>*>, boost::_bi::value<int> > > const&, std::unique_ptr<impala::Thread, std::default_delete<impala::Thread> >*, bool) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread.h:74:12 (impalad+0x1f87303)
          #5 impala::ThreadPool<impala::HdfsOp>::Init() /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread-pool.h:73:23 (impalad+0x1f7ad1f)
          #6 impala::ExecEnv::Init() /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/runtime/exec-env.cc:310:5 (impalad+0x1f74d57)
          #7 ImpaladMain(int, char**) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/service/impalad-main.cc:73:3 (impalad+0x21a5047)
          #8 main /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/service/daemon-main.cc:37:12 (impalad+0x19b860a)
      
        Thread T337 (tid=24456, running) created by thread T335 at:
          #0 pthread_create /mnt/source/llvm/llvm-5.0.1.src-p2/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:889 (impalad+0x194d8bb)
          #1 boost::thread::start_thread_noexcept() <null> (impalad+0x30e3889)
          #2 boost::thread::thread<void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), std::string, std::string, boost::function<void ()>, impala::ThreadDebugInfo*, impala::Promise<long, (impala::PromiseMode)0>*>(void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), std::string, std::string, boost::function<void ()>, impala::ThreadDebugInfo*, impala::Promise<long, (impala::PromiseMode)0>*) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/thread/detail/thread.hpp:420:13 (impalad+0x23e196b)
          #3 impala::Thread::StartThread(std::string const&, std::string const&, boost::function<void ()> const&, std::unique_ptr<impala::Thread, std::default_delete<impala::Thread> >*, bool) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread.cc:317:13 (impalad+0x23deb35)
          #4 impala::Status impala::Thread::Create<void (impala::ClientRequestState::*)(), impala::ClientRequestState*>(std::string const&, std::string const&, void (impala::ClientRequestState::* const&)(), impala::ClientRequestState* const&, std::unique_ptr<impala::Thread, std::default_delete<impala::Thread> >*, bool) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread.h:81:12 (impalad+0x2219c57)
          #5 impala::ClientRequestState::WaitAsync() /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/service/client-request-state.cc:791:10 (impalad+0x2214404)
          #6 impala::ImpalaServer::query(beeswax::QueryHandle&, beeswax::Query const&) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/service/impala-beeswax-server.cc:74:34 (impalad+0x222dd00)
          #7 beeswax::BeeswaxServiceProcessor::process_query(int, apache::thrift::protocol::TProtocol*, apache::thrift::protocol::TProtocol*, void*) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/generated-sources/gen-cpp/BeeswaxService.cpp:3227:13 (impalad+0x278b514)
          #8 beeswax::BeeswaxServiceProcessor::dispatchCall(apache::thrift::protocol::TProtocol*, apache::thrift::protocol::TProtocol*, std::string const&, int, void*) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/generated-sources/gen-cpp/BeeswaxService.cpp:3200:3 (impalad+0x278b2fa)
          #9 impala::ImpalaServiceProcessor::dispatchCall(apache::thrift::protocol::TProtocol*, apache::thrift::protocol::TProtocol*, std::string const&, int, void*) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/generated-sources/gen-cpp/ImpalaService.cpp:1824:49 (impalad+0x275746f)
          #10 apache::thrift::TDispatchProcessor::process(boost::shared_ptr<apache::thrift::protocol::TProtocol>, boost::shared_ptr<apache::thrift::protocol::TProtocol>, void*) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/thrift-0.9.3-p8/include/thrift/TDispatchProcessor.h:121:12 (impalad+0x19bad8e)
          #11 apache::thrift::server::TAcceptQueueServer::Task::run() /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/rpc/TAcceptQueueServer.cpp:84:26 (impalad+0x1f33553)
          #12 impala::ThriftThread::RunRunnable(boost::shared_ptr<apache::thrift::concurrency::Runnable>, impala::Promise<unsigned long, (impala::PromiseMode)0>*) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/rpc/thrift-thread.cc:74:13 (impalad+0x1f2794c)
          #13 boost::_mfi::mf2<void, impala::ThriftThread, boost::shared_ptr<apache::thrift::concurrency::Runnable>, impala::Promise<unsigned long, (impala::PromiseMode)0>*>::operator()(impala::ThriftThread*, boost::shared_ptr<apache::thrift::concurrency::Runnable>, impala::Promise<unsigned long, (impala::PromiseMode)0>*) const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/mem_fn_template.hpp:280:29 (impalad+0x1f294c9)
          #14 void boost::_bi::list3<boost::_bi::value<impala::ThriftThread*>, boost::_bi::value<boost::shared_ptr<apache::thrift::concurrency::Runnable> >, boost::_bi::value<impala::Promise<unsigned long, (impala::PromiseMode)0>*> >::operator()<boost::_mfi::mf2<void, impala::ThriftThread, boost::shared_ptr<apache::thrift::concurrency::Runnable>, impala::Promise<unsigned long, (impala::PromiseMode)0>*>, boost::_bi::list0>(boost::_bi::type<void>, boost::_mfi::mf2<void, impala::ThriftThread, boost::shared_ptr<apache::thrift::concurrency::Runnable>, impala::Promise<unsigned long, (impala::PromiseMode)0>*>&, boost::_bi::list0&, int) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:398:9 (impalad+0x1f293dc)
          #15 boost::_bi::bind_t<void, boost::_mfi::mf2<void, impala::ThriftThread, boost::shared_ptr<apache::thrift::concurrency::Runnable>, impala::Promise<unsigned long, (impala::PromiseMode)0>*>, boost::_bi::list3<boost::_bi::value<impala::ThriftThread*>, boost::_bi::value<boost::shared_ptr<apache::thrift::concurrency::Runnable> >, boost::_bi::value<impala::Promise<unsigned long, (impala::PromiseMode)0>*> > >::operator()() /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:1222:16 (impalad+0x1f29323)
          #16 boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void, boost::_mfi::mf2<void, impala::ThriftThread, boost::shared_ptr<apache::thrift::concurrency::Runnable>, impala::Promise<unsigned long, (impala::PromiseMode)0>*>, boost::_bi::list3<boost::_bi::value<impala::ThriftThread*>, boost::_bi::value<boost::shared_ptr<apache::thrift::concurrency::Runnable> >, boost::_bi::value<impala::Promise<unsigned long, (impala::PromiseMode)0>*> > >, void>::invoke(boost::detail::function::function_buffer&) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/function/function_template.hpp:159:11 (impalad+0x1f29091)
          #17 boost::function0<void>::operator()() const /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/function/function_template.hpp:770:14 (impalad+0x1e192b1)
          #18 impala::Thread::SuperviseThread(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*) /data/jenkins/workspace/impala-private-parameterized/repos/Impala/be/src/util/thread.cc:360:3 (impalad+0x23df196)
          #19 void boost::_bi::list5<boost::_bi::value<std::string>, boost::_bi::value<std::string>, boost::_bi::value<boost::function<void ()> >, boost::_bi::value<impala::ThreadDebugInfo*>, boost::_bi::value<impala::Promise<long, (impala::PromiseMode)0>*> >::operator()<void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list0>(boost::_bi::type<void>, void (*&)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list0&, int) /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:531:9 (impalad+0x23e735c)
          #20 boost::_bi::bind_t<void, void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list5<boost::_bi::value<std::string>, boost::_bi::value<std::string>, 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-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/bind/bind.hpp:1222:16 (impalad+0x23e7273)
          #21 boost::detail::thread_data<boost::_bi::bind_t<void, void (*)(std::string const&, std::string const&, boost::function<void ()>, impala::ThreadDebugInfo const*, impala::Promise<long, (impala::PromiseMode)0>*), boost::_bi::list5<boost::_bi::value<std::string>, boost::_bi::value<std::string>, 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-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/thread/detail/thread.hpp:116:17 (impalad+0x23e6f60)
          #22 thread_proxy <null> (impalad+0x30e44f9)SUMMARY: ThreadSanitizer: data race /data/jenkins/workspace/impala-private-parameterized/Impala-Toolchain/boost-1.61.0-p2/include/boost/unordered/detail/unique.hpp:329:26 in boost::unordered::detail::table_impl<boost::unordered::detail::map<std::allocator<std::pair<std::string const, hdfs_internal*> >, std::string, hdfs_internal*, boost::hash<std::string>, std::equal_to<std::string> > >::add_node(boost::unordered::detail::node_constructor<std::allocator<boost::unordered::detail::ptr_node<std::pair<std::string const, hdfs_internal*> > > >&, unsigned long)

      Attachments

        Activity

          People

            stakiar Sahil Takiar
            stakiar Sahil Takiar
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: