Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TSAN failure in QLTransactionTest.CorrectStatusRequestBatching test #1322

Closed
rao-vasireddy opened this issue May 6, 2019 · 1 comment
Closed

Comments

@rao-vasireddy
Copy link
Contributor

WARNING: ThreadSanitizer: data race (pid=32484)

3534 | Write of size 8 at 0x7b0400019f30 by thread T227:
3535 | #0 operator delete(void*) $YB_THIRDPARTY_DIR/build/common/llvm-7.0.1.src/../../../src/llvm-7.0.1.src/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:127 (ql-transaction-test+0x4ef9d1)
3536 | #1 std::__1::__libcpp_deallocate(void*, unsigned long) $YB_THIRDPARTY_DIR/installed/tsan/libcxx/include/c++/v1/new:272:10 (libyrpc.so+0x1f0cc9)
3537 | #2 std::__1::allocator<cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type>::deallocate(cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type*, unsigned long) $YB_THIRDPARTY_DIR/installed/tsan/libcxx/include/c++/v1/memory:1802 (libyrpc.so+0x1f0cc9)
3538 | #3 std::__1::allocator_traits<std::__1::allocator<cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type> >::deallocate(std::__1::allocator<cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type>&, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type*, unsigned long) $YB_THIRDPARTY_DIR/installed/tsan/libcxx/include/c++/v1/memory:1556 (libyrpc.so+0x1f0cc9)
3539 | #4 cds::details::Allocator<cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type, std::__1::allocator<cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type> >::Delete(cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type*) $YB_THIRDPARTY_DIR/installed/tsan/include/cds/details/allocator.h:108 (libyrpc.so+0x1f0cc9)
3540 | #5 cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_deallocator::operator()(cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type*) $YB_THIRDPARTY_DIR/installed/tsan/include/cds/container/basket_queue.h:124:37 (libyrpc.so+0x1f0c6d)
3541 | #6 cds::intrusive::BasketQueue<cds::gc::DHP, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::intrusive_traits>::dispose_node(cds::intrusive::basket_queue::node<cds::gc::DHP, cds::opt::none>)::internal_disposer::operator()(cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask, cds::container::basket_queue::traits>::node_type*) $YB_THIRDPARTY_DIR/installed/tsan/include/cds/intrusive/basket_queue.h:579:25 (libyrpc.so+0x1f0b92)
3542 | #7 void cds::gc::DHP::retire<cds::intrusive::BasketQueue<cds::gc::DHP, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::intrusive_traits>::dispose_node(cds::intrusive::basket_queue::node<cds::gc::DHP, cds::opt::none>)::internal_disposer, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask, cds::container::basket_queue::traits>::node_type>(cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type*)::'lambda'(void*)::operator()(void*) const $YB_THIRDPARTY_DIR/installed/tsan/include/cds/gc/dhp.h:1406:89 (libyrpc.so+0x1f0b3d)
3543 | #8 void cds::gc::DHP::retire<cds::intrusive::BasketQueue<cds::gc::DHP, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::intrusive_traits>::dispose_node(cds::intrusive::basket_queue::node<cds::gc::DHP, cds::opt::none>)::internal_disposer, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask, cds::container::basket_queue::traits>::node_type>(cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type*)::'lambda'(void*)::__invoke(void*) $YB_THIRDPARTY_DIR/installed/tsan/include/cds/gc/dhp.h:1406:73 (libyrpc.so+0x1f0af9)
3544 | #9 cds::gc::dhp::smr::scan(cds::gc::dhp::thread_data*) (libcds.so.2.3.3+0xa7f0)
3545 | #10 cds::gc::DHP::scan() $YB_THIRDPARTY_DIR/installed/tsan/include/cds/gc/dhp.h:1422:34 (libyrpc.so+0x1f09e6)
3546 | #11 void cds::gc::DHP::retire<cds::intrusive::BasketQueue<cds::gc::DHP, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::intrusive_traits>::dispose_node(cds::intrusive::basket_queue::node<cds::gc::DHP, cds::opt::none>)::internal_disposer, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask, cds::container::basket_queue::traits>::node_type>(cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type*) $YB_THIRDPARTY_DIR/installed/tsan/include/cds/gc/dhp.h:1407:17 (libyrpc.so+0x1f07b3)
3547 | #12 cds::intrusive::BasketQueue<cds::gc::DHP, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::intrusive_traits>::dispose_node(cds::intrusive::basket_queue::node<cds::gc::DHP, cds::opt::none>) $YB_THIRDPARTY_DIR/installed/tsan/include/cds/intrusive/basket_queue.h:582:17 (libyrpc.so+0x1ede8e)
3548 | #13 cds::intrusive::BasketQueue<cds::gc::DHP, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask
, cds::container::basket_queue::traits>::node_type, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::intrusive_traits>::free_chain(cds::details::marked_ptr<cds::intrusive::basket_queue::node<cds::gc::DHP, cds::opt::none>, 1>, cds::details::marked_ptr<cds::intrusive::basket_queue::node<cds::gc::DHP, cds::opt::none>, 1>) $YB_THIRDPARTY_DIR/installed/tsan/include/cds/intrusive/basket_queue.h:558:21 (libyrpc.so+0x1ef2bc)
3549 | #14 cds::intrusive::BasketQueue<cds::gc::DHP, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::intrusive_traits>::do_dequeue(cds::intrusive::BasketQueue<cds::gc::DHP, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::node_type, cds::container::details::make_basket_queue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::intrusive_traits>::dequeue_result&, bool) $YB_THIRDPARTY_DIR/installed/tsan/include/cds/intrusive/basket_queue.h:519:29 (libyrpc.so+0x1ee33b)
3550 | #15 bool cds::container::BasketQueue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::dequeue_with<cds::container::BasketQueue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::dequeue(yb::rpc::ThreadPoolTask*&)::'lambda'(yb::rpc::ThreadPoolTask*&)>(cds::container::BasketQueue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::dequeue(yb::rpc::ThreadPoolTask*&)::'lambda'(yb::rpc::ThreadPoolTask*&)) $YB_THIRDPARTY_DIR/installed/tsan/include/cds/container/basket_queue.h:399:30 (libyrpc.so+0x1f0e47)
3551 | #16 cds::container::BasketQueue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::dequeue(yb::rpc::ThreadPoolTask*&) $YB_THIRDPARTY_DIR/installed/tsan/include/cds/container/basket_queue.h:375:20 (libyrpc.so+0x1f0df0)
3552 | #17 cds::container::BasketQueue<cds::gc::DHP, yb::rpc::ThreadPoolTask*, cds::container::basket_queue::traits>::pop(yb::rpc::ThreadPoolTask*&) $YB_THIRDPARTY_DIR/installed/tsan/include/cds/container/basket_queue.h:409:20 (libyrpc.so+0x1f0d40)
3553 | #18 yb::rpc::(anonymous namespace)::Worker::PopTask(yb::rpc::ThreadPoolTask**) /net/centos-gcp-cloud-jenkins-slave-8a5/share/jenkins/workspace/yugabyte-centos-master-clang-tsan/build/tsan-clang-dynamic-enterprise-ninja/../../src/yb/rpc/thread_pool.cc:109:28 (libyrpc.so+0x1ec486)
3554 | #19 yb::rpc::(anonymous namespace)::Worker::Execute() /net/centos-gcp-cloud-jenkins-slave-8a5/share/jenkins/workspace/yugabyte-centos-master-clang-tsan/build/tsan-clang-dynamic-enterprise-ninja/../../src/yb/rpc/thread_pool.cc:99:11 (libyrpc.so+0x1ec0aa)
3555 | #20 decltype((std::__1::forward<yb::rpc::(anonymous namespace)::Worker&>(fp0)).fp()) std::__1::__invoke<void (yb::rpc::(anonymous namespace)::Worker::&)(), yb::rpc::(anonymous namespace)::Worker*&, void>(void (yb::rpc::(anonymous namespace)::Worker::&)(), yb::rpc::(anonymous namespace)::Worker&) $YB_THIRDPARTY_DIR/installed/tsan/libcxx/include/c++/v1/type_traits:4286:1 (libyrpc.so+0x1ec423)
3556 | #21 std::__1::__bind_return<void (yb::rpc::(anonymous namespace)::Worker::)(), std::__1::tuple<yb::rpc::(anonymous namespace)::Worker>, std::__1::tuple<>, __is_valid_bind_return<void (yb::rpc::(anonymous namespace)::Worker::)(), std::__1::tuple<yb::rpc::(anonymous namespace)::Worker>, std::__1::tuple<> >::value>::type std::__1::__apply_functor<void (yb::rpc::(anonymous namespace)::Worker::)(), std::__1::tuple<yb::rpc::(anonymous namespace)::Worker>, 0ul, std::__1::tuple<> >(void (yb::rpc::(anonymous namespace)::Worker::&)(), std::__1::tuple<yb::rpc::(anonymous namespace)::Worker>&, std::__1::__tuple_indices<0ul>, std::__1::tuple<>&&) $YB_THIRDPARTY_DIR/installed/tsan/libcxx/include/c++/v1/functional:2216 (libyrpc.so+0x1ec423)
3557 | #22 std::__1::__bind_return<void (yb::rpc::(anonymous namespace)::Worker::)(), std::__1::tuple<yb::rpc::(anonymous namespace)::Worker>, std::__1::tuple<>, __is_valid_bind_return<void (yb::rpc::(anonymous namespace)::Worker::)(), std::__1::tuple<yb::rpc::(anonymous namespace)::Worker>, std::__1::tuple<> >::value>::type std::__1::__bind<void (yb::rpc::(anonymous namespace)::Worker::* const&)(), yb::rpc::(anonymous namespace)::Worker* const&>::operator()<>() $YB_THIRDPARTY_DIR/installed/tsan/libcxx/include/c++/v1/functional:2249 (libyrpc.so+0x1ec423)
3558 | #23 decltype(std::__1::forward<std::__1::__bind<void (yb::rpc::(anonymous namespace)::Worker::* const&)(), yb::rpc::(anonymous namespace)::Worker* const&>&>(fp)()) std::__1::__invoke<std::__1::__bind<void (yb::rpc::(anonymous namespace)::Worker::* const&)(), yb::rpc::(anonymous namespace)::Worker* const&>&>(std::__1::__bind<void (yb::rpc::(anonymous namespace)::Worker::* const&)(), yb::rpc::(anonymous namespace)::Worker* const&>&) $YB_THIRDPARTY_DIR/installed/tsan/libcxx/include/c++/v1/type_traits:4345 (libyrpc.so+0x1ec423)
3559 | #24 void std::__1::__invoke_void_return_wrapper::__call<std::__1::__bind<void (yb::rpc::(anonymous namespace)::Worker::* const&)(), yb::rpc::(anonymous namespace)::Worker* const&>&>(std::__1::__bind<void (yb::rpc::(anonymous namespace)::Worker::* const&)(), yb::rpc::(anonymous namespace)::Worker* const&>&) $YB_THIRDPARTY_DIR/installed/tsan/libcxx/include/c++/v1/__functional_base:349 (libyrpc.so+0x1ec423)
3560 | #25 std::__1::__function::__func<std::__1::__bind<void (yb::rpc::(anonymous namespace)::Worker::* const&)(), yb::rpc::(anonymous namespace)::Worker* const&>, std::__1::allocator<std::__1::__bind<void (yb::rpc::(anonymous namespace)::Worker::* const&)(), yb::rpc::(anonymous namespace)::Worker* const&> >, void ()>::operator()() $YB_THIRDPARTY_DIR/installed/tsan/libcxx/include/c++/v1/functional:1562:12 (libyrpc.so+0x1ec32d)
3561 | #26 std::__1::function<void ()>::operator()() const $YB_THIRDPARTY_DIR/installed/tsan/libcxx/include/c++/v1/functional:1913:12 (libtserver.so+0x174094)
3562 | #27 yb::Thread::SuperviseThread(void*) /net/centos-gcp-cloud-jenkins-slave-8a5/share/jenkins/workspace/yugabyte-centos-master-clang-tsan/build/tsan-clang-dynamic-enterprise-ninja/../../src/yb/util/thread.cc:669:3 (libyb_util.so+0x31b3d9)

@bmatican
Copy link
Contributor

bmatican commented Feb 7, 2023

Closing as too old, not failing recently.

@bmatican bmatican closed this as completed Feb 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants