Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save aaronchongth/7481bac63c018de0c9bcf71d720b633f to your computer and use it in GitHub Desktop.
Save aaronchongth/7481bac63c018de0c9bcf71d720b633f to your computer and use it in GitHub Desktop.
rmf_fleet_adapter tsan output
This file has been truncated, but you can view the full file.
aaron@biryani:~/workspaces/g_rmf$ ./build/rmf_fleet_adapter/test_rmf_fleet_adapter
[WARN] [1628132092.019045226] [rclcpp]: logging was initialized more than once
1628132092.021933 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 8 at 0x7b100002db00 by thread T25 (mutexes: write M2004):
#0 free <null> (test_rmf_fleet_adapter+0x500ce8)
#1 <null> <null> (libddsc.so.0+0x56215)
Previous read of size 8 at 0x7b100002db00 by thread T7 (mutexes: write M1445):
#0 memcpy <null> (test_rmf_fleet_adapter+0x50bd57)
#1 ddsrt_memdup <null> (libddsc.so.0+0xd16a6)
Mutex M2004 (0x7b4400007740) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M1445 (0x7b4400001c00) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T25 (tid=103744, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T7 (tid=103726, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race (/home/aaron/workspaces/g_rmf/build/rmf_fleet_adapter/test_rmf_fleet_adapter+0x500ce8) in free
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 8 at 0x7b0c0001ed50 by thread T25 (mutexes: write M2004):
#0 free <null> (test_rmf_fleet_adapter+0x500ce8)
#1 <null> <null> (libddsc.so.0+0x561e4)
Previous read of size 8 at 0x7b0c0001ed50 by thread T7 (mutexes: write M1445):
#0 strlen <null> (test_rmf_fleet_adapter+0x50966d)
#1 <null> <null> (libddsc.so.0+0xc12d2)
Mutex M2004 (0x7b4400007740) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M1445 (0x7b4400001c00) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T25 (tid=103744, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T7 (tid=103726, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race (/home/aaron/workspaces/g_rmf/build/rmf_fleet_adapter/test_rmf_fleet_adapter+0x500ce8) in free
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 8 at 0x7b5000021878 by thread T25 (mutexes: write M2004):
#0 free <null> (test_rmf_fleet_adapter+0x500ce8)
#1 <null> <null> (libddsc.so.0+0xadb4c)
Previous read of size 8 at 0x7b5000021878 by thread T7 (mutexes: write M1445):
#0 memcpy <null> (test_rmf_fleet_adapter+0x50bd57)
#1 <null> <null> (libddsc.so.0+0x5711b)
Mutex M2004 (0x7b4400007740) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M1445 (0x7b4400001c00) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T25 (tid=103744, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T7 (tid=103726, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race (/home/aaron/workspaces/g_rmf/build/rmf_fleet_adapter/test_rmf_fleet_adapter+0x500ce8) in free
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 8 at 0x7b1000030180 by main thread (mutexes: write M2007, write M2113):
#0 free <null> (test_rmf_fleet_adapter+0x500ce8)
#1 <null> <null> (libddsc.so.0+0x56215)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Previous read of size 8 at 0x7b1000030180 by thread T25 (mutexes: write M2004):
#0 memcpy <null> (test_rmf_fleet_adapter+0x50bd57)
#1 ddsrt_memdup <null> (libddsc.so.0+0xd16a6)
Mutex M2007 (0x7b54000093f8) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_entity_init <null> (libddsc.so.0+0xb4c1e)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2113 (0x7b5800009938) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 <null> <null> (libddsc.so.0+0x72bf1)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2004 (0x7b4400007740) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T25 (tid=103744, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race (/home/aaron/workspaces/g_rmf/build/rmf_fleet_adapter/test_rmf_fleet_adapter+0x500ce8) in free
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 8 at 0x7b10000301c0 by main thread (mutexes: write M2007, write M2113):
#0 free <null> (test_rmf_fleet_adapter+0x500ce8)
#1 <null> <null> (libddsc.so.0+0x561e4)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Previous read of size 8 at 0x7b10000301c0 by thread T25 (mutexes: write M2004):
#0 strlen <null> (test_rmf_fleet_adapter+0x50966d)
#1 <null> <null> (libddsc.so.0+0xc12d2)
Mutex M2007 (0x7b54000093f8) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_entity_init <null> (libddsc.so.0+0xb4c1e)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2113 (0x7b5800009938) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 <null> <null> (libddsc.so.0+0x72bf1)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2004 (0x7b4400007740) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T25 (tid=103744, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race (/home/aaron/workspaces/g_rmf/build/rmf_fleet_adapter/test_rmf_fleet_adapter+0x500ce8) in free
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 8 at 0x7b5000022078 by main thread (mutexes: write M2007, write M2113):
#0 free <null> (test_rmf_fleet_adapter+0x500ce8)
#1 <null> <null> (libddsc.so.0+0xbccff)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Previous read of size 8 at 0x7b5000022078 by thread T25 (mutexes: write M2004):
#0 memcpy <null> (test_rmf_fleet_adapter+0x50bd57)
#1 <null> <null> (libddsc.so.0+0x5711b)
Mutex M2007 (0x7b54000093f8) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_entity_init <null> (libddsc.so.0+0xb4c1e)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2113 (0x7b5800009938) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 <null> <null> (libddsc.so.0+0x72bf1)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2004 (0x7b4400007740) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T25 (tid=103744, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race (/home/aaron/workspaces/g_rmf/build/rmf_fleet_adapter/test_rmf_fleet_adapter+0x500ce8) in free
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 8 at 0x7b1000030378 by thread T7 (mutexes: write M1438):
#0 free <null> (test_rmf_fleet_adapter+0x500ce8)
#1 <null> <null> (libddsc.so.0+0x561e4)
Previous read of size 1 at 0x7b100003037a by thread T25 (mutexes: write M1997):
#0 memcpy <null> (test_rmf_fleet_adapter+0x50bd57)
#1 <null> <null> (libddsc.so.0+0xc1461)
Mutex M1438 (0x7b4400001980) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M1997 (0x7b44000074c0) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T7 (tid=103726, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T25 (tid=103744, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race (/home/aaron/workspaces/g_rmf/build/rmf_fleet_adapter/test_rmf_fleet_adapter+0x500ce8) in free
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 8 at 0x7b4800029a00 by main thread (mutexes: write M2034, write M2013, write M2016, write M2015):
#0 operator delete[](void*) <null> (test_rmf_fleet_adapter+0x58f68e)
#1 <null> <null> (librmw_cyclonedds_cpp.so+0x5413a)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Previous read of size 1 at 0x7b4800029a07 by thread T7 (mutexes: write M1465):
#0 memcpy <null> (test_rmf_fleet_adapter+0x50bd57)
#1 <null> <null> (librmw_cyclonedds_cpp.so+0x3d1c4)
Mutex M2034 (0x7b5000000508) created at:
#0 pthread_mutex_lock <null> (test_rmf_fleet_adapter+0x51f326)
#1 rmw_create_node <null> (librmw_cyclonedds_cpp.so+0x2ffb6)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2013 (0x7b5800007878) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_entity_init <null> (libddsc.so.0+0xb4c1e)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2016 (0x7b5800007b38) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 <null> <null> (libddsc.so.0+0x72bf1)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2015 (0x7b4400007948) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 whc_new <null> (libddsc.so.0+0xc0ae5)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M1465 (0x7b4400002240) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T7 (tid=103726, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race (/home/aaron/workspaces/g_rmf/build/rmf_fleet_adapter/test_rmf_fleet_adapter+0x58f68e) in operator delete[](void*)
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 8 at 0x7b0c00020a88 by thread T25 (mutexes: write M1997):
#0 free <null> (test_rmf_fleet_adapter+0x500ce8)
#1 <null> <null> (libddsc.so.0+0x561e4)
Previous read of size 1 at 0x7b0c00020a8c by thread T7 (mutexes: write M1438):
#0 memcpy <null> (test_rmf_fleet_adapter+0x50bd57)
#1 <null> <null> (libddsc.so.0+0xc1450)
Mutex M1997 (0x7b44000074c0) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M1438 (0x7b4400001980) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T25 (tid=103744, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T7 (tid=103726, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race (/home/aaron/workspaces/g_rmf/build/rmf_fleet_adapter/test_rmf_fleet_adapter+0x500ce8) in free
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 8 at 0x7b4800029a28 by main thread (mutexes: write M2034, write M2013, write M2016, write M2015):
#0 operator delete[](void*) <null> (test_rmf_fleet_adapter+0x58f68e)
#1 <null> <null> (librmw_cyclonedds_cpp.so+0x5413a)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Previous read of size 1 at 0x7b4800029a2f by thread T7 (mutexes: write M1465):
#0 memcpy <null> (test_rmf_fleet_adapter+0x50bd57)
#1 void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag) <null> (librcpputils.so+0x8b85)
Mutex M2034 (0x7b5000000508) created at:
#0 pthread_mutex_lock <null> (test_rmf_fleet_adapter+0x51f326)
#1 rmw_create_node <null> (librmw_cyclonedds_cpp.so+0x2ffb6)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2013 (0x7b5800007878) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_entity_init <null> (libddsc.so.0+0xb4c1e)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2016 (0x7b5800007b38) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 <null> <null> (libddsc.so.0+0x72bf1)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2015 (0x7b4400007948) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 whc_new <null> (libddsc.so.0+0xc0ae5)
#2 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#3 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#4 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#5 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#6 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M1465 (0x7b4400002240) created at:
#0 pthread_mutex_init <null> (test_rmf_fleet_adapter+0x5034dd)
#1 dds_rhc_default_new_xchecks <null> (libddsc.so.0+0xb012c)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T7 (tid=103726, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 void __gnu_cxx::new_allocator<rmf_traffic_ros2::blockade::BlockadeNode>::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (librmf_traffic_ros2.so+0x42af03)
#3 void std::allocator_traits<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >::construct<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>&, rmf_traffic_ros2::blockade::BlockadeNode*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (librmf_traffic_ros2.so+0x42af03)
#4 std::_Sp_counted_ptr_inplace<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (librmf_traffic_ros2.so+0x42af03)
#5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(rmf_traffic_ros2::blockade::BlockadeNode*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (librmf_traffic_ros2.so+0x42af03)
#6 std::__shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_traffic_ros2.so+0x42af03)
#7 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode>::shared_ptr<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_traffic_ros2.so+0x429815)
#8 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::allocate_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::allocator<rmf_traffic_ros2::blockade::BlockadeNode>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::allocator<rmf_traffic_ros2::blockade::BlockadeNode> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_traffic_ros2.so+0x429815)
#9 std::shared_ptr<rmf_traffic_ros2::blockade::BlockadeNode> std::make_shared<rmf_traffic_ros2::blockade::BlockadeNode, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_traffic_ros2.so+0x429815)
#10 rmf_traffic_ros2::blockade::make_node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_traffic_ros2/src/rmf_traffic_ros2/blockade/Node.cpp:266:15 (librmf_traffic_ros2.so+0x429815)
#11 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:170:30 (test_rmf_fleet_adapter+0x63997c)
#12 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race (/home/aaron/workspaces/g_rmf/build/rmf_fleet_adapter/test_rmf_fleet_adapter+0x58f68e) in operator delete[](void*)
==================
[INFO] [1628132092.522752946] [test_blockade_1]: New path for A with 5 checkpoints
[INFO] [1628132092.523496234] [test_blockade_1]: Ready: A2
[INFO] [1628132092.548684907] [test_blockade_1]: New path for B with 5 checkpoints
[INFO] [1628132092.549083384] [test_blockade_1]: Ready: B1
[INFO] [1628132092.550852873] [test_blockade_1]: Canceling: B
[INFO] [1628132092.551792360] [test_blockade_1]: Canceling: A
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Read of size 1 at 0x7b3c00000760 by thread T10:
#0 rxcpp::schedulers::recurse::is_allowed() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:78:16 (test_rmf_fleet_adapter+0x6f00a3)
#1 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:713:20 (test_rmf_fleet_adapter+0x6f00a3)
#2 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6efcf1)
#3 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70e790)
#4 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x70e790)
#5 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x70e790)
#6 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x70e790)
#7 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x70e790)
#8 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#9 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#10 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#11 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#12 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#13 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#14 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#15 <null> <null> (libstdc++.so.6+0xd6de3)
Previous write of size 1 at 0x7b3c00000760 by main thread (mutexes: write M1811):
#0 rxcpp::schedulers::recursion::reset(bool) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:113:19 (test_rmf_fleet_adapter+0x70c938)
#1 rxcpp::schedulers::new_thread::new_worker::schedule(std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >, rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:137:26 (test_rmf_fleet_adapter+0x70c938)
#2 rxcpp::schedulers::new_thread::new_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:130:13 (test_rmf_fleet_adapter+0x70c803)
#3 std::enable_if<((detail::is_action_function<rxcpp::composite_subscription const&>::value) || (is_subscription<rxcpp::composite_subscription const&>::value)) && (!(is_schedulable<rxcpp::composite_subscription const&>::value)), void>::type rxcpp::schedulers::worker::schedule<rxcpp::composite_subscription const&, rxcpp::schedulers::action const&>(rxcpp::composite_subscription const&, rxcpp::schedulers::action const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (test_rmf_fleet_adapter+0x8b40af)
#4 rxcpp::schedulers::event_loop::loop_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:55:24 (test_rmf_fleet_adapter+0x8b2ce6)
#5 std::enable_if<((detail::is_action_function<auto>::value) || (is_subscription<auto>::value)) && (!(is_schedulable<auto>::value)), void>::type rxcpp::schedulers::worker::schedule<rmf_fleet_adapter::agv::test::MockScheduleNode::unregister_participant(unsigned long)::'lambda'(auto const&)>(auto&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (librmf_fleet_adapter.so+0x87bc76)
#6 rmf_fleet_adapter::agv::test::MockScheduleNode::unregister_participant(unsigned long) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:164:13 (librmf_fleet_adapter.so+0x874baf)
#7 rmf_traffic::schedule::Participant::Implementation::Shared::~Shared() /home/aaron/workspaces/g_rmf/src/rmf/rmf_traffic/rmf_traffic/src/rmf_traffic/schedule/Participant.cpp:143:12 (librmf_traffic.so+0x2354bb)
#8 void __gnu_cxx::new_allocator<rmf_traffic::schedule::Participant::Implementation::Shared>::destroy<rmf_traffic::schedule::Participant::Implementation::Shared>(rmf_traffic::schedule::Participant::Implementation::Shared*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:153:10 (librmf_traffic.so+0x23bafd)
#9 void std::allocator_traits<std::allocator<rmf_traffic::schedule::Participant::Implementation::Shared> >::destroy<rmf_traffic::schedule::Participant::Implementation::Shared>(std::allocator<rmf_traffic::schedule::Participant::Implementation::Shared>&, rmf_traffic::schedule::Participant::Implementation::Shared*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:497:8 (librmf_traffic.so+0x23bafd)
#10 std::_Sp_counted_ptr_inplace<rmf_traffic::schedule::Participant::Implementation::Shared, std::allocator<rmf_traffic::schedule::Participant::Implementation::Shared>, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:557:2 (librmf_traffic.so+0x23bafd)
#11 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 (librmf_traffic.so+0x23ba08)
#12 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 (librmf_traffic.so+0x23ba08)
#13 std::__shared_ptr<rmf_traffic::schedule::Participant::Implementation::Shared, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 (librmf_traffic.so+0x23ba08)
#14 rmf_traffic::schedule::Participant::Implementation::~Implementation() /home/aaron/workspaces/g_rmf/src/rmf/rmf_traffic/rmf_traffic/src/rmf_traffic/schedule/internal_Participant.hpp:31:20 (librmf_traffic.so+0x23ba08)
#15 void rmf_utils::details::default_delete<rmf_traffic::schedule::Participant::Implementation>(rmf_traffic::schedule::Participant::Implementation*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:52:3 (librmf_traffic.so+0x23ba08)
#16 std::unique_ptr<rmf_traffic::schedule::Participant::Implementation, void (*)(rmf_traffic::schedule::Participant::Implementation*)>::~unique_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_ptr.h:292:4 (librmf_fleet_adapter.so+0x858b29)
#17 rmf_utils::unique_impl_ptr<rmf_traffic::schedule::Participant::Implementation, void (*)(rmf_traffic::schedule::Participant::Implementation*)>::~unique_impl_ptr() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:73:7 (librmf_fleet_adapter.so+0x858b29)
#18 rmf_traffic::schedule::Participant::~Participant() /home/aaron/workspaces/g_rmf/install/rmf_traffic/include/rmf_traffic/schedule/Participant.hpp:112:26 (librmf_fleet_adapter.so+0x858b29)
#19 rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation::Data::~Data() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/TrafficLight.cpp:42:51 (librmf_fleet_adapter.so+0x858b29)
#20 void __gnu_cxx::new_allocator<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation::Data>::destroy<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation::Data>(rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation::Data*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:153:10 (librmf_fleet_adapter.so+0x855fcd)
#21 void std::allocator_traits<std::allocator<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation::Data> >::destroy<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation::Data>(std::allocator<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation::Data>&, rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation::Data*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:497:8 (librmf_fleet_adapter.so+0x855fcd)
#22 std::_Sp_counted_ptr_inplace<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation::Data, std::allocator<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation::Data>, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:557:2 (librmf_fleet_adapter.so+0x855fcd)
#23 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 (librmf_fleet_adapter.so+0x858fbb)
#24 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 (librmf_fleet_adapter.so+0x858fbb)
#25 std::__shared_ptr<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation::Data, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 (librmf_fleet_adapter.so+0x858fbb)
#26 rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation::~Implementation() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/internal_TrafficLight.hpp:39:35 (librmf_fleet_adapter.so+0x858fbb)
#27 void rmf_utils::details::default_delete<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation>(rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:52:3 (librmf_fleet_adapter.so+0x858fbb)
#28 std::unique_ptr<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation, void (*)(rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation*)>::~unique_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_ptr.h:292:4 (librmf_fleet_adapter.so+0x858d79)
#29 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation, void (*)(rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::Implementation*)>::~unique_impl_ptr() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:73:7 (librmf_fleet_adapter.so+0x858d79)
#30 rmf_fleet_adapter::agv::TrafficLight::UpdateHandle::~UpdateHandle() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/include/rmf_fleet_adapter/agv/TrafficLight.hpp:44:9 (librmf_fleet_adapter.so+0x858d79)
#31 void __gnu_cxx::new_allocator<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle>::destroy<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle>(rmf_fleet_adapter::agv::TrafficLight::UpdateHandle*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:153:10 (librmf_fleet_adapter.so+0x858d79)
#32 void std::allocator_traits<std::allocator<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle> >::destroy<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle>(std::allocator<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle>&, rmf_fleet_adapter::agv::TrafficLight::UpdateHandle*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:497:8 (librmf_fleet_adapter.so+0x858d79)
#33 std::_Sp_counted_ptr_inplace<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle, std::allocator<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle>, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:557:2 (librmf_fleet_adapter.so+0x858d79)
#34 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 (test_rmf_fleet_adapter+0x63c99a)
#35 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 (test_rmf_fleet_adapter+0x63c99a)
#36 std::__shared_ptr<rmf_fleet_adapter::agv::TrafficLight::UpdateHandle, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 (test_rmf_fleet_adapter+0x63c99a)
#37 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:275:1 (test_rmf_fleet_adapter+0x63c99a)
#38 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#39 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#40 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#41 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#42 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#43 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#44 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#45 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#46 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#47 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Location is heap block of size 240 at 0x7b3c00000690 allocated by main thread:
#0 operator new(unsigned long) <null> (test_rmf_fleet_adapter+0x58ee6b)
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (test_rmf_fleet_adapter+0x70ca18)
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (test_rmf_fleet_adapter+0x70ca18)
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/allocated_ptr.h:97:21 (test_rmf_fleet_adapter+0x70ca18)
#4 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(rxcpp::schedulers::new_thread::new_worker::new_worker_state*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:677:19 (test_rmf_fleet_adapter+0x70ca18)
#5 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70ca18)
#6 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70baa0)
#7 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> const&, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70baa0)
#8 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state> std::make_shared<rxcpp::schedulers::new_thread::new_worker::new_worker_state, rxcpp::composite_subscription&>(rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70baa0)
#9 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:68:21 (test_rmf_fleet_adapter+0x70baa0)
#10 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#11 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#12 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#13 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#14 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#15 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#16 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#17 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#18 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#19 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#20 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#21 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#22 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#23 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#24 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#25 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#26 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#27 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#28 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#29 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#30 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#31 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#32 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#33 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#34 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#35 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#36 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#37 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#38 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#39 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#40 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#41 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#42 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#43 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#44 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M1811 (0x7b3c000006d8) created at:
#0 pthread_mutex_lock <null> (test_rmf_fleet_adapter+0x51f326)
#1 __gthread_mutex_lock(pthread_mutex_t*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:749:12 (test_rmf_fleet_adapter+0x70e341)
#2 std::mutex::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_mutex.h:100:17 (test_rmf_fleet_adapter+0x70e341)
#3 std::unique_lock<std::mutex>::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:141:17 (test_rmf_fleet_adapter+0x70e341)
#4 std::unique_lock<std::mutex>::unique_lock(std::mutex&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:71:2 (test_rmf_fleet_adapter+0x70e341)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:97:50 (test_rmf_fleet_adapter+0x70e341)
#6 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#7 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#8 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#9 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#10 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#11 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#12 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#13 <null> <null> (libstdc++.so.6+0xd6de3)
Thread T10 (tid=103729, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)::operator()(std::function<void ()>) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:148:20 (test_rmf_fleet_adapter+0x70b228)
#3 std::_Function_handler<std::thread (std::function<void ()>), rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)>::_M_invoke(std::_Any_data const&, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (test_rmf_fleet_adapter+0x70b228)
#4 std::function<std::thread (std::function<void ()>)>::operator()(std::function<void ()>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70bd7b)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:87:29 (test_rmf_fleet_adapter+0x70bd7b)
#6 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#7 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#8 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#9 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#10 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#11 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#12 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#13 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#14 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#15 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#16 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#17 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#18 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#19 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#20 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#21 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#22 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#23 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#24 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#25 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#26 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#27 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#28 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#29 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#30 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#31 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#32 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#33 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#34 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#35 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#36 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#37 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#38 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#39 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#40 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:78:16 in rxcpp::schedulers::recurse::is_allowed() const
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 1 at 0x7b580000b678 by main thread (mutexes: write M2731):
#0 rmf_rxcpp::RxCppExecutor::stop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:107:15 (librmf_fleet_adapter.so+0x51db3d)
#1 rmf_rxcpp::Transport::stop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:225:18 (librmf_fleet_adapter.so+0x51db3d)
#2 rmf_fleet_adapter::agv::test::MockAdapter::stop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:298:17 (librmf_fleet_adapter.so+0x86f5ea)
#3 rmf_fleet_adapter::agv::test::MockAdapter::~MockAdapter() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:329:3 (librmf_fleet_adapter.so+0x86f5ea)
#4 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:275:1 (test_rmf_fleet_adapter+0x63cc8c)
#5 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#6 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#7 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#8 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#9 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#10 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#11 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#12 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#13 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#14 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Previous read of size 1 at 0x7b580000b678 by thread T26 (mutexes: write M2741):
#0 rmf_rxcpp::RxCppExecutor::spin()::'lambda'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:58:17 (librmf_fleet_adapter.so+0x5fdce3)
#1 rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:88:43 (librmf_fleet_adapter.so+0x5fe193)
#2 bool std::condition_variable::wait_until<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()>(std::unique_lock<std::mutex>&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&, rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/condition_variable:137:10 (librmf_fleet_adapter.so+0x5fe193)
#3 bool std::condition_variable::wait_for<long, std::ratio<1l, 1000l>, rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()>(std::unique_lock<std::mutex>&, std::chrono::duration<long, std::ratio<1l, 1000l> > const&, rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/condition_variable:165:9 (librmf_fleet_adapter.so+0x5fe193)
#4 rmf_rxcpp::RxCppExecutor::spin() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:86:15 (librmf_fleet_adapter.so+0x5fdb6e)
#5 rmf_rxcpp::Transport::start()::'lambda'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:212:22 (librmf_fleet_adapter.so+0x52d532)
#6 void std::__invoke_impl<void, rmf_rxcpp::Transport::start()::'lambda'()>(std::__invoke_other, rmf_rxcpp::Transport::start()::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (librmf_fleet_adapter.so+0x52d532)
#7 std::__invoke_result<rmf_rxcpp::Transport::start()::'lambda'()>::type std::__invoke<rmf_rxcpp::Transport::start()::'lambda'()>(rmf_rxcpp::Transport::start()::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (librmf_fleet_adapter.so+0x52d532)
#8 void std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (librmf_fleet_adapter.so+0x52d532)
#9 std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (librmf_fleet_adapter.so+0x52d532)
#10 std::thread::_State_impl<std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (librmf_fleet_adapter.so+0x52d532)
#11 <null> <null> (libstdc++.so.6+0xd6de3)
Location is heap block of size 728 at 0x7b580000b400 allocated by main thread:
#0 operator new(unsigned long) <null> (test_rmf_fleet_adapter+0x58ee6b)
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (librmf_fleet_adapter.so+0x5fd00b)
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (librmf_fleet_adapter.so+0x5fd00b)
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/allocated_ptr.h:97:21 (librmf_fleet_adapter.so+0x5fd00b)
#4 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(rmf_rxcpp::RxCppExecutor*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_rxcpp::RxCppExecutor> >, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:677:19 (librmf_fleet_adapter.so+0x5fd00b)
#5 std::__shared_ptr<rmf_rxcpp::RxCppExecutor, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(std::_Sp_alloc_shared_tag<std::allocator<rmf_rxcpp::RxCppExecutor> >, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_fleet_adapter.so+0x5fd00b)
#6 std::shared_ptr<rmf_rxcpp::RxCppExecutor>::shared_ptr<std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(std::_Sp_alloc_shared_tag<std::allocator<rmf_rxcpp::RxCppExecutor> >, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_fleet_adapter.so+0x5fb9f6)
#7 std::shared_ptr<rmf_rxcpp::RxCppExecutor> std::allocate_shared<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(std::allocator<rmf_rxcpp::RxCppExecutor> const&, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_fleet_adapter.so+0x5fb9f6)
#8 std::shared_ptr<rmf_rxcpp::RxCppExecutor> std::make_shared<rmf_rxcpp::RxCppExecutor, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_fleet_adapter.so+0x5fb9f6)
#9 rmf_rxcpp::Transport::Transport(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:190:15 (librmf_fleet_adapter.so+0x5fb9f6)
#10 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#11 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#12 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#13 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#14 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#15 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#16 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#17 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#18 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#19 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#20 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#21 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#22 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#23 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#24 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#25 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2731 (0x7b6400011180) created at:
#0 pthread_mutex_lock <null> (test_rmf_fleet_adapter+0x51f326)
#1 __gthread_mutex_lock(pthread_mutex_t*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:749:12 (librmf_fleet_adapter.so+0x51d645)
#2 std::mutex::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_mutex.h:100:17 (librmf_fleet_adapter.so+0x51d645)
#3 std::unique_lock<std::mutex>::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:141:17 (librmf_fleet_adapter.so+0x51d645)
#4 std::unique_lock<std::mutex>::unique_lock(std::mutex&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:71:2 (librmf_fleet_adapter.so+0x51d645)
#5 rmf_rxcpp::Transport::start() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:198:34 (librmf_fleet_adapter.so+0x51d645)
#6 rmf_fleet_adapter::agv::test::MockAdapter::start() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:292:17 (librmf_fleet_adapter.so+0x86ee60)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:214:11 (test_rmf_fleet_adapter+0x63aa81)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2741 (0x7b580000b680) created at:
#0 pthread_mutex_lock <null> (test_rmf_fleet_adapter+0x51f326)
#1 __gthread_mutex_lock(pthread_mutex_t*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:749:12 (librmf_fleet_adapter.so+0x5fdb1d)
#2 std::mutex::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_mutex.h:100:17 (librmf_fleet_adapter.so+0x5fdb1d)
#3 std::unique_lock<std::mutex>::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:141:17 (librmf_fleet_adapter.so+0x5fdb1d)
#4 std::unique_lock<std::mutex>::unique_lock(std::mutex&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:71:2 (librmf_fleet_adapter.so+0x5fdb1d)
#5 rmf_rxcpp::RxCppExecutor::spin() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:80:38 (librmf_fleet_adapter.so+0x5fdb1d)
#6 rmf_rxcpp::Transport::start()::'lambda'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:212:22 (librmf_fleet_adapter.so+0x52d532)
#7 void std::__invoke_impl<void, rmf_rxcpp::Transport::start()::'lambda'()>(std::__invoke_other, rmf_rxcpp::Transport::start()::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (librmf_fleet_adapter.so+0x52d532)
#8 std::__invoke_result<rmf_rxcpp::Transport::start()::'lambda'()>::type std::__invoke<rmf_rxcpp::Transport::start()::'lambda'()>(rmf_rxcpp::Transport::start()::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (librmf_fleet_adapter.so+0x52d532)
#9 void std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (librmf_fleet_adapter.so+0x52d532)
#10 std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (librmf_fleet_adapter.so+0x52d532)
#11 std::thread::_State_impl<std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (librmf_fleet_adapter.so+0x52d532)
#12 <null> <null> (libstdc++.so.6+0xd6de3)
Thread T26 (tid=103746, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rmf_fleet_adapter::agv::test::MockAdapter::start() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:292:17 (librmf_fleet_adapter.so+0x86ee60)
#3 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:214:11 (test_rmf_fleet_adapter+0x63aa81)
#4 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#5 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#6 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#7 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#8 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#9 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#10 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#11 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#12 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#13 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:107:15 in rmf_rxcpp::RxCppExecutor::stop()
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Read of size 1 at 0x7b580000b678 by thread T26 (mutexes: write M2741):
#0 rmf_rxcpp::RxCppExecutor::spin()::'lambda'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:58:17 (librmf_fleet_adapter.so+0x5fdce3)
#1 rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:88:43 (librmf_fleet_adapter.so+0x5fe235)
#2 bool std::condition_variable::wait_until<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()>(std::unique_lock<std::mutex>&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&, rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/condition_variable:139:13 (librmf_fleet_adapter.so+0x5fe235)
#3 bool std::condition_variable::wait_for<long, std::ratio<1l, 1000l>, rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()>(std::unique_lock<std::mutex>&, std::chrono::duration<long, std::ratio<1l, 1000l> > const&, rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/condition_variable:165:9 (librmf_fleet_adapter.so+0x5fe235)
#4 rmf_rxcpp::RxCppExecutor::spin() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:86:15 (librmf_fleet_adapter.so+0x5fdb6e)
#5 rmf_rxcpp::Transport::start()::'lambda'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:212:22 (librmf_fleet_adapter.so+0x52d532)
#6 void std::__invoke_impl<void, rmf_rxcpp::Transport::start()::'lambda'()>(std::__invoke_other, rmf_rxcpp::Transport::start()::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (librmf_fleet_adapter.so+0x52d532)
#7 std::__invoke_result<rmf_rxcpp::Transport::start()::'lambda'()>::type std::__invoke<rmf_rxcpp::Transport::start()::'lambda'()>(rmf_rxcpp::Transport::start()::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (librmf_fleet_adapter.so+0x52d532)
#8 void std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (librmf_fleet_adapter.so+0x52d532)
#9 std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (librmf_fleet_adapter.so+0x52d532)
#10 std::thread::_State_impl<std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (librmf_fleet_adapter.so+0x52d532)
#11 <null> <null> (libstdc++.so.6+0xd6de3)
Previous write of size 1 at 0x7b580000b678 by main thread (mutexes: write M2731):
#0 rmf_rxcpp::RxCppExecutor::stop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:107:15 (librmf_fleet_adapter.so+0x51db3d)
#1 rmf_rxcpp::Transport::stop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:225:18 (librmf_fleet_adapter.so+0x51db3d)
#2 rmf_fleet_adapter::agv::test::MockAdapter::stop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:298:17 (librmf_fleet_adapter.so+0x86f5ea)
#3 rmf_fleet_adapter::agv::test::MockAdapter::~MockAdapter() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:329:3 (librmf_fleet_adapter.so+0x86f5ea)
#4 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:275:1 (test_rmf_fleet_adapter+0x63cc8c)
#5 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#6 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#7 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#8 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#9 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#10 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#11 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#12 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#13 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#14 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Location is heap block of size 728 at 0x7b580000b400 allocated by main thread:
#0 operator new(unsigned long) <null> (test_rmf_fleet_adapter+0x58ee6b)
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (librmf_fleet_adapter.so+0x5fd00b)
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (librmf_fleet_adapter.so+0x5fd00b)
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/allocated_ptr.h:97:21 (librmf_fleet_adapter.so+0x5fd00b)
#4 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(rmf_rxcpp::RxCppExecutor*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_rxcpp::RxCppExecutor> >, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:677:19 (librmf_fleet_adapter.so+0x5fd00b)
#5 std::__shared_ptr<rmf_rxcpp::RxCppExecutor, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(std::_Sp_alloc_shared_tag<std::allocator<rmf_rxcpp::RxCppExecutor> >, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_fleet_adapter.so+0x5fd00b)
#6 std::shared_ptr<rmf_rxcpp::RxCppExecutor>::shared_ptr<std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(std::_Sp_alloc_shared_tag<std::allocator<rmf_rxcpp::RxCppExecutor> >, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_fleet_adapter.so+0x5fb9f6)
#7 std::shared_ptr<rmf_rxcpp::RxCppExecutor> std::allocate_shared<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(std::allocator<rmf_rxcpp::RxCppExecutor> const&, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_fleet_adapter.so+0x5fb9f6)
#8 std::shared_ptr<rmf_rxcpp::RxCppExecutor> std::make_shared<rmf_rxcpp::RxCppExecutor, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_fleet_adapter.so+0x5fb9f6)
#9 rmf_rxcpp::Transport::Transport(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:190:15 (librmf_fleet_adapter.so+0x5fb9f6)
#10 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#11 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#12 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#13 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#14 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#15 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#16 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#17 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#18 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#19 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#20 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#21 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#22 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#23 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#24 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#25 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M2741 (0x7b580000b680) created at:
#0 pthread_mutex_lock <null> (test_rmf_fleet_adapter+0x51f326)
#1 __gthread_mutex_lock(pthread_mutex_t*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:749:12 (librmf_fleet_adapter.so+0x5fdb1d)
#2 std::mutex::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_mutex.h:100:17 (librmf_fleet_adapter.so+0x5fdb1d)
#3 std::unique_lock<std::mutex>::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:141:17 (librmf_fleet_adapter.so+0x5fdb1d)
#4 std::unique_lock<std::mutex>::unique_lock(std::mutex&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:71:2 (librmf_fleet_adapter.so+0x5fdb1d)
#5 rmf_rxcpp::RxCppExecutor::spin() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:80:38 (librmf_fleet_adapter.so+0x5fdb1d)
#6 rmf_rxcpp::Transport::start()::'lambda'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:212:22 (librmf_fleet_adapter.so+0x52d532)
#7 void std::__invoke_impl<void, rmf_rxcpp::Transport::start()::'lambda'()>(std::__invoke_other, rmf_rxcpp::Transport::start()::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (librmf_fleet_adapter.so+0x52d532)
#8 std::__invoke_result<rmf_rxcpp::Transport::start()::'lambda'()>::type std::__invoke<rmf_rxcpp::Transport::start()::'lambda'()>(rmf_rxcpp::Transport::start()::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (librmf_fleet_adapter.so+0x52d532)
#9 void std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (librmf_fleet_adapter.so+0x52d532)
#10 std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (librmf_fleet_adapter.so+0x52d532)
#11 std::thread::_State_impl<std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (librmf_fleet_adapter.so+0x52d532)
#12 <null> <null> (libstdc++.so.6+0xd6de3)
Mutex M2731 (0x7b6400011180) created at:
#0 pthread_mutex_lock <null> (test_rmf_fleet_adapter+0x51f326)
#1 __gthread_mutex_lock(pthread_mutex_t*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:749:12 (librmf_fleet_adapter.so+0x51d645)
#2 std::mutex::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_mutex.h:100:17 (librmf_fleet_adapter.so+0x51d645)
#3 std::unique_lock<std::mutex>::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:141:17 (librmf_fleet_adapter.so+0x51d645)
#4 std::unique_lock<std::mutex>::unique_lock(std::mutex&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:71:2 (librmf_fleet_adapter.so+0x51d645)
#5 rmf_rxcpp::Transport::start() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:198:34 (librmf_fleet_adapter.so+0x51d645)
#6 rmf_fleet_adapter::agv::test::MockAdapter::start() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:292:17 (librmf_fleet_adapter.so+0x86ee60)
#7 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:214:11 (test_rmf_fleet_adapter+0x63aa81)
#8 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#9 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#10 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#14 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#15 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#16 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#17 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T26 (tid=103746, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rmf_fleet_adapter::agv::test::MockAdapter::start() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:292:17 (librmf_fleet_adapter.so+0x86ee60)
#3 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:214:11 (test_rmf_fleet_adapter+0x63aa81)
#4 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#5 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#6 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#7 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#8 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#9 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#10 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#11 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#12 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#13 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:58:17 in rmf_rxcpp::RxCppExecutor::spin()::'lambda'()::operator()() const
==================
[WARN] [1628132092.748954540] [rclcpp]: logging was initialized more than once
1628132092.750682 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
[INFO] [1628132092.803874237] [test_blockade_3]: New path for A with 5 checkpoints
[INFO] [1628132092.804234046] [test_blockade_3]: Ready: A1
[INFO] [1628132092.821164890] [test_blockade_3]: New path for B with 5 checkpoints
[INFO] [1628132092.821979304] [test_blockade_3]: Ready: B1
[INFO] [1628132092.855663902] [test_blockade_3]: Reached: A2
[INFO] [1628132092.857608051] [test_blockade_3]: Canceling: B
[INFO] [1628132092.858714838] [test_blockade_3]: Canceling: A
1628132092.890937 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
[INFO] [1628132092.911061143] [test_node_0]: Added a robot named [test_robot] with participant ID [0]
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Read of size 1 at 0x7b3c000010c0 by thread T20:
#0 rxcpp::schedulers::recurse::is_allowed() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:78:16 (test_rmf_fleet_adapter+0x6f00a3)
#1 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:713:20 (test_rmf_fleet_adapter+0x6f00a3)
#2 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6efcf1)
#3 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70e790)
#4 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x70e790)
#5 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x70e790)
#6 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x70e790)
#7 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x70e790)
#8 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#9 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#10 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#11 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#12 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#13 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#14 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#15 <null> <null> (libstdc++.so.6+0xd6de3)
Previous write of size 1 at 0x7b3c000010c0 by thread T23 (mutexes: write M1901):
#0 rxcpp::schedulers::recursion::reset(bool) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:113:19 (test_rmf_fleet_adapter+0x70c938)
#1 rxcpp::schedulers::new_thread::new_worker::schedule(std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >, rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:137:26 (test_rmf_fleet_adapter+0x70c938)
#2 rxcpp::schedulers::new_thread::new_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:130:13 (test_rmf_fleet_adapter+0x70c803)
#3 std::enable_if<((detail::is_action_function<rxcpp::composite_subscription const&>::value) || (is_subscription<rxcpp::composite_subscription const&>::value)) && (!(is_schedulable<rxcpp::composite_subscription const&>::value)), void>::type rxcpp::schedulers::worker::schedule<rxcpp::composite_subscription const&, rxcpp::schedulers::action const&>(rxcpp::composite_subscription const&, rxcpp::schedulers::action const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (test_rmf_fleet_adapter+0x8b40af)
#4 rxcpp::schedulers::event_loop::loop_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:55:24 (test_rmf_fleet_adapter+0x8b2ce6)
#5 std::enable_if<((detail::is_action_function<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >::value) || (is_subscription<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >::value)) && (!(is_schedulable<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >::value)), void>::type rxcpp::schedulers::worker::schedule<rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >::observe_on_state::ensure_processing(std::unique_lock<std::mutex>&) const::'lambda'(rxcpp::schedulers::schedulable const&)&>(rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> >&&, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >::observe_on_state::ensure_processing(std::unique_lock<std::mutex>&) const::'lambda'(rxcpp::schedulers::schedulable const&)&...) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (librmf_fleet_adapter.so+0x7ce836)
#6 rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >::observe_on_state::ensure_processing(std::unique_lock<std::mutex>&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-observe_on.hpp:174:31 (librmf_fleet_adapter.so+0x7cdd57)
#7 rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >::on_next(rmf_traffic::agv::Planner::Result) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-observe_on.hpp:189:20 (librmf_fleet_adapter.so+0x7e0ef1)
#8 rxcpp::detail::OnNextForward<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void>::operator()(rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >&, rmf_traffic::agv::Planner::Result&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observer.hpp:67:11 (librmf_fleet_adapter.so+0x7e09bf)
#9 rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void>::on_next(rmf_traffic::agv::Planner::Result&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observer.hpp:245:9 (librmf_fleet_adapter.so+0x7e09bf)
#10 void rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> >::nextdetacher::operator()<rmf_traffic::agv::Planner::Result>(rmf_traffic::agv::Planner::Result) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscriber.hpp:54:35 (librmf_fleet_adapter.so+0x7e09bf)
#11 void rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> >::on_next<rmf_traffic::agv::Planner::Result&>(rmf_traffic::agv::Planner::Result&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscriber.hpp:181:9 (librmf_fleet_adapter.so+0x7e07e0)
#12 void rmf_fleet_adapter::services::FindPath::operator()<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > >(rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > const&)::'lambda'(rmf_fleet_adapter::jobs::SearchForPath::Result const&)::operator()(rmf_fleet_adapter::jobs::SearchForPath::Result const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/../services/detail/impl_FindPath.hpp:39:11 (librmf_fleet_adapter.so+0x7e061c)
#13 rxcpp::observer<rmf_fleet_adapter::jobs::SearchForPath::Result, rxcpp::detail::stateless_observer_tag, void rmf_fleet_adapter::services::FindPath::operator()<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > >(rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > const&)::'lambda'(rmf_fleet_adapter::jobs::SearchForPath::Result const&), void rmf_fleet_adapter::services::FindPath::operator()<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > >(rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > const&)::'lambda'(std::__exception_ptr::exception_ptr), void rmf_fleet_adapter::services::FindPath::operator()<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > >(rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > const&)::'lambda'()>::on_next(rmf_fleet_adapter::jobs::SearchForPath::Result&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observer.hpp:333:9 (librmf_fleet_adapter.so+0x7e04f4)
#14 rxcpp::detail::specific_observer<rmf_fleet_adapter::jobs::SearchForPath::Result, rxcpp::observer<rmf_fleet_adapter::jobs::SearchForPath::Result, rxcpp::detail::stateless_observer_tag, void rmf_fleet_adapter::services::FindPath::operator()<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > >(rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > const&)::'lambda'(rmf_fleet_adapter::jobs::SearchForPath::Result const&), void rmf_fleet_adapter::services::FindPath::operator()<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > >(rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > const&)::'lambda'(std::__exception_ptr::exception_ptr), void rmf_fleet_adapter::services::FindPath::operator()<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > >(rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, rxcpp::operators::detail::observe_on<rmf_traffic::agv::Planner::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_traffic::agv::Planner::Result, rxcpp::observer<rmf_traffic::agv::Planner::Result, void, void, void, void> > >, void, void, void> > const&)::'lambda'()> >::on_next(rmf_fleet_adapter::jobs::SearchForPath::Result&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observer.hpp:372:21 (librmf_fleet_adapter.so+0x7e04f4)
#15 void rxcpp::observer<rmf_fleet_adapter::jobs::SearchForPath::Result, void, void, void, void>::on_next<rmf_fleet_adapter::jobs::SearchForPath::Result>(rmf_fleet_adapter::jobs::SearchForPath::Result&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observer.hpp:439:26 (test_rmf_fleet_adapter+0x92c82c)
#16 void rxcpp::subscriber<rmf_fleet_adapter::jobs::SearchForPath::Result, rxcpp::observer<rmf_fleet_adapter::jobs::SearchForPath::Result, void, void, void, void> >::nextdetacher::operator()<rmf_fleet_adapter::jobs::SearchForPath::Result>(rmf_fleet_adapter::jobs::SearchForPath::Result) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscriber.hpp:54:35 (test_rmf_fleet_adapter+0x92c82c)
#17 void rxcpp::subscriber<rmf_fleet_adapter::jobs::SearchForPath::Result, rxcpp::observer<rmf_fleet_adapter::jobs::SearchForPath::Result, void, void, void, void> >::on_next<rmf_fleet_adapter::jobs::SearchForPath::Result const&>(rmf_fleet_adapter::jobs::SearchForPath::Result const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscriber.hpp:181:9 (test_rmf_fleet_adapter+0x92c453)
#18 rxcpp::notifications::notification<rmf_fleet_adapter::jobs::SearchForPath::Result>::on_next_notification::accept(rxcpp::subscriber<rmf_fleet_adapter::jobs::SearchForPath::Result, rxcpp::observer<rmf_fleet_adapter::jobs::SearchForPath::Result, void, void, void, void> > const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-notification.hpp:143:15 (test_rmf_fleet_adapter+0x92b891)
#19 rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::SearchForPath::Result, rxcpp::observe_on_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::SearchForPath::Result, rxcpp::observer<rmf_fleet_adapter::jobs::SearchForPath::Result, void, void, void, void> > >::observe_on_state::ensure_processing(std::unique_lock<std::mutex>&) const::'lambda'(rxcpp::schedulers::schedulable const&)::operator()(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-observe_on.hpp:149:47 (test_rmf_fleet_adapter+0x91d6ff)
#20 std::_Function_handler<void (rxcpp::schedulers::schedulable const&), rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::SearchForPath::Result, rxcpp::observe_on_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::SearchForPath::Result, rxcpp::observer<rmf_fleet_adapter::jobs::SearchForPath::Result, void, void, void, void> > >::observe_on_state::ensure_processing(std::unique_lock<std::mutex>&) const::'lambda'(rxcpp::schedulers::schedulable const&)>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x91cf68)
#21 std::function<void (rxcpp::schedulers::schedulable const&)>::operator()(rxcpp::schedulers::schedulable const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x6f0090)
#22 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:712:13 (test_rmf_fleet_adapter+0x6f0090)
#23 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6efcf1)
#24 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70e790)
#25 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x70e790)
#26 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x70e790)
#27 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x70e790)
#28 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x70e790)
#29 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#30 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#31 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#32 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#33 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#34 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#35 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#36 <null> <null> (libstdc++.so.6+0xd6de3)
Location is heap block of size 240 at 0x7b3c00000ff0 allocated by main thread:
#0 operator new(unsigned long) <null> (test_rmf_fleet_adapter+0x58ee6b)
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (test_rmf_fleet_adapter+0x70ca18)
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (test_rmf_fleet_adapter+0x70ca18)
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/allocated_ptr.h:97:21 (test_rmf_fleet_adapter+0x70ca18)
#4 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(rxcpp::schedulers::new_thread::new_worker::new_worker_state*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:677:19 (test_rmf_fleet_adapter+0x70ca18)
#5 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70ca18)
#6 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70baa0)
#7 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> const&, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70baa0)
#8 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state> std::make_shared<rxcpp::schedulers::new_thread::new_worker::new_worker_state, rxcpp::composite_subscription&>(rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70baa0)
#9 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:68:21 (test_rmf_fleet_adapter+0x70baa0)
#10 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#11 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#12 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#13 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#14 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#15 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#16 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#17 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#18 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#19 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#20 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#21 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#22 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#23 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#24 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#25 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#26 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#27 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#28 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#29 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#30 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#31 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#32 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#33 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#34 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#35 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#36 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#37 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#38 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#39 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#40 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#41 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#42 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#43 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#44 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M1901 (0x7b3c00001038) created at:
#0 pthread_mutex_lock <null> (test_rmf_fleet_adapter+0x51f326)
#1 __gthread_mutex_lock(pthread_mutex_t*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:749:12 (test_rmf_fleet_adapter+0x70e341)
#2 std::mutex::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_mutex.h:100:17 (test_rmf_fleet_adapter+0x70e341)
#3 std::unique_lock<std::mutex>::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:141:17 (test_rmf_fleet_adapter+0x70e341)
#4 std::unique_lock<std::mutex>::unique_lock(std::mutex&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:71:2 (test_rmf_fleet_adapter+0x70e341)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:97:50 (test_rmf_fleet_adapter+0x70e341)
#6 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#7 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#8 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#9 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#10 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#11 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#12 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#13 <null> <null> (libstdc++.so.6+0xd6de3)
Thread T20 (tid=103739, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)::operator()(std::function<void ()>) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:148:20 (test_rmf_fleet_adapter+0x70b228)
#3 std::_Function_handler<std::thread (std::function<void ()>), rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)>::_M_invoke(std::_Any_data const&, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (test_rmf_fleet_adapter+0x70b228)
#4 std::function<std::thread (std::function<void ()>)>::operator()(std::function<void ()>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70bd7b)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:87:29 (test_rmf_fleet_adapter+0x70bd7b)
#6 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#7 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#8 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#9 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#10 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#11 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#12 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#13 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#14 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#15 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#16 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#17 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#18 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#19 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#20 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#21 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#22 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#23 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#24 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#25 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#26 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#27 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#28 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#29 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#30 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#31 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#32 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#33 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#34 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#35 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#36 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#37 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#38 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#39 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#40 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T23 (tid=103742, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)::operator()(std::function<void ()>) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:148:20 (test_rmf_fleet_adapter+0x70b228)
#3 std::_Function_handler<std::thread (std::function<void ()>), rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)>::_M_invoke(std::_Any_data const&, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (test_rmf_fleet_adapter+0x70b228)
#4 std::function<std::thread (std::function<void ()>)>::operator()(std::function<void ()>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70bd7b)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:87:29 (test_rmf_fleet_adapter+0x70bd7b)
#6 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#7 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#8 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#9 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#10 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#11 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#12 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#13 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#14 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#15 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#16 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#17 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#18 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#19 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#20 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#21 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#22 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#23 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#24 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#25 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#26 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#27 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#28 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#29 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#30 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#31 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#32 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#33 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#34 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#35 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#36 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#37 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#38 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#39 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#40 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:78:16 in rxcpp::schedulers::recurse::is_allowed() const
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Read of size 1 at 0x7b5800045878 by thread T40:
#0 rmf_rxcpp::RxCppExecutor::spin()::'lambda'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:58:17 (librmf_fleet_adapter.so+0x5fdce3)
#1 rmf_rxcpp::RxCppExecutor::spin() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:97:11 (librmf_fleet_adapter.so+0x5fdba7)
#2 rmf_rxcpp::Transport::start()::'lambda'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:212:22 (librmf_fleet_adapter.so+0x52d532)
#3 void std::__invoke_impl<void, rmf_rxcpp::Transport::start()::'lambda'()>(std::__invoke_other, rmf_rxcpp::Transport::start()::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (librmf_fleet_adapter.so+0x52d532)
#4 std::__invoke_result<rmf_rxcpp::Transport::start()::'lambda'()>::type std::__invoke<rmf_rxcpp::Transport::start()::'lambda'()>(rmf_rxcpp::Transport::start()::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (librmf_fleet_adapter.so+0x52d532)
#5 void std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (librmf_fleet_adapter.so+0x52d532)
#6 std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (librmf_fleet_adapter.so+0x52d532)
#7 std::thread::_State_impl<std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (librmf_fleet_adapter.so+0x52d532)
#8 <null> <null> (libstdc++.so.6+0xd6de3)
Previous write of size 1 at 0x7b5800045878 by main thread (mutexes: write M629232242375325824):
#0 rmf_rxcpp::RxCppExecutor::stop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:107:15 (librmf_fleet_adapter.so+0x51db3d)
#1 rmf_rxcpp::Transport::stop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:225:18 (librmf_fleet_adapter.so+0x51db3d)
#2 rmf_fleet_adapter::agv::test::MockAdapter::stop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:298:17 (librmf_fleet_adapter.so+0x86f5ea)
#3 rmf_fleet_adapter::agv::test::MockAdapter::~MockAdapter() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:329:3 (librmf_fleet_adapter.so+0x86f5ea)
#4 void __gnu_cxx::new_allocator<rmf_fleet_adapter::agv::test::MockAdapter>::destroy<rmf_fleet_adapter::agv::test::MockAdapter>(rmf_fleet_adapter::agv::test::MockAdapter*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:153:10 (test_rmf_fleet_adapter+0x648fdd)
#5 void std::allocator_traits<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter> >::destroy<rmf_fleet_adapter::agv::test::MockAdapter>(std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>&, rmf_fleet_adapter::agv::test::MockAdapter*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:497:8 (test_rmf_fleet_adapter+0x648fdd)
#6 std::_Sp_counted_ptr_inplace<rmf_fleet_adapter::agv::test::MockAdapter, std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:557:2 (test_rmf_fleet_adapter+0x648fdd)
#7 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 (test_rmf_fleet_adapter+0x648a72)
#8 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 (test_rmf_fleet_adapter+0x648a72)
#9 std::__shared_ptr<rmf_fleet_adapter::agv::test::MockAdapter, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 (test_rmf_fleet_adapter+0x648a72)
#10 rmf_fleet_adapter::phases::test::MockAdapterFixture::Data::~Data() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/MockAdapterFixture.hpp:34:10 (test_rmf_fleet_adapter+0x648a72)
#11 void __gnu_cxx::new_allocator<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data>::destroy<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data>(rmf_fleet_adapter::phases::test::MockAdapterFixture::Data*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:153:10 (test_rmf_fleet_adapter+0x64865d)
#12 void std::allocator_traits<std::allocator<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data> >::destroy<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data>(std::allocator<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data>&, rmf_fleet_adapter::phases::test::MockAdapterFixture::Data*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:497:8 (test_rmf_fleet_adapter+0x64865d)
#13 std::_Sp_counted_ptr_inplace<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data, std::allocator<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data>, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:557:2 (test_rmf_fleet_adapter+0x64865d)
#14 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 (test_rmf_fleet_adapter+0x6473ee)
#15 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 (test_rmf_fleet_adapter+0x6473ee)
#16 std::__shared_ptr<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 (test_rmf_fleet_adapter+0x6473ee)
#17 std::__shared_ptr<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data, (__gnu_cxx::_Lock_policy)2>::reset() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1287:9 (test_rmf_fleet_adapter+0x6473ee)
#18 rmf_fleet_adapter::phases::test::MockAdapterFixture::~MockAdapterFixture() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/MockAdapterFixture.cpp:164:8 (test_rmf_fleet_adapter+0x6473ee)
#19 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:822:3 (test_rmf_fleet_adapter+0x6adaa8)
#20 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#21 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#22 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#23 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#24 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#25 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#26 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#27 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#28 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Location is heap block of size 728 at 0x7b5800045600 allocated by main thread:
#0 operator new(unsigned long) <null> (test_rmf_fleet_adapter+0x58ee6b)
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (librmf_fleet_adapter.so+0x5fd00b)
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (librmf_fleet_adapter.so+0x5fd00b)
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/allocated_ptr.h:97:21 (librmf_fleet_adapter.so+0x5fd00b)
#4 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(rmf_rxcpp::RxCppExecutor*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_rxcpp::RxCppExecutor> >, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:677:19 (librmf_fleet_adapter.so+0x5fd00b)
#5 std::__shared_ptr<rmf_rxcpp::RxCppExecutor, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(std::_Sp_alloc_shared_tag<std::allocator<rmf_rxcpp::RxCppExecutor> >, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_fleet_adapter.so+0x5fd00b)
#6 std::shared_ptr<rmf_rxcpp::RxCppExecutor>::shared_ptr<std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(std::_Sp_alloc_shared_tag<std::allocator<rmf_rxcpp::RxCppExecutor> >, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_fleet_adapter.so+0x5fb9f6)
#7 std::shared_ptr<rmf_rxcpp::RxCppExecutor> std::allocate_shared<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(std::allocator<rmf_rxcpp::RxCppExecutor> const&, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_fleet_adapter.so+0x5fb9f6)
#8 std::shared_ptr<rmf_rxcpp::RxCppExecutor> std::make_shared<rmf_rxcpp::RxCppExecutor, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_fleet_adapter.so+0x5fb9f6)
#9 rmf_rxcpp::Transport::Transport(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:190:15 (librmf_fleet_adapter.so+0x5fb9f6)
#10 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#11 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#12 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#13 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#14 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#15 void __gnu_cxx::new_allocator<rmf_fleet_adapter::agv::test::MockAdapter>::construct<rmf_fleet_adapter::agv::test::MockAdapter, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(rmf_fleet_adapter::agv::test::MockAdapter*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x648e28)
#16 void std::allocator_traits<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter> >::construct<rmf_fleet_adapter::agv::test::MockAdapter, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>&, rmf_fleet_adapter::agv::test::MockAdapter*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x648e28)
#17 std::_Sp_counted_ptr_inplace<rmf_fleet_adapter::agv::test::MockAdapter, std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x648e28)
#18 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_fleet_adapter::agv::test::MockAdapter, std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(rmf_fleet_adapter::agv::test::MockAdapter*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x648e28)
#19 std::__shared_ptr<rmf_fleet_adapter::agv::test::MockAdapter, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x648e28)
#20 std::shared_ptr<rmf_fleet_adapter::agv::test::MockAdapter>::shared_ptr<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x64314d)
#21 std::shared_ptr<rmf_fleet_adapter::agv::test::MockAdapter> std::allocate_shared<rmf_fleet_adapter::agv::test::MockAdapter, std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(std::allocator<rmf_fleet_adapter::agv::test::MockAdapter> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x64314d)
#22 std::shared_ptr<rmf_fleet_adapter::agv::test::MockAdapter> std::make_shared<rmf_fleet_adapter::agv::test::MockAdapter, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x64314d)
#23 rmf_fleet_adapter::phases::test::MockAdapterFixture::MockAdapterFixture() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/MockAdapterFixture.cpp:38:19 (test_rmf_fleet_adapter+0x64314d)
#24 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorOpen.cpp:55:1 (test_rmf_fleet_adapter+0x6ada64)
#25 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:820:7 (test_rmf_fleet_adapter+0x6ada64)
#26 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#27 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#28 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#29 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#30 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#31 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#32 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#33 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#34 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M629232242375325824 is already destroyed.
Thread T40 (tid=103764, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rmf_fleet_adapter::agv::test::MockAdapter::start() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:292:17 (librmf_fleet_adapter.so+0x86ee60)
#3 rmf_fleet_adapter::phases::test::MockAdapterFixture::MockAdapterFixture() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/MockAdapterFixture.cpp:118:18 (test_rmf_fleet_adapter+0x644cea)
#4 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorOpen.cpp:55:1 (test_rmf_fleet_adapter+0x6ada64)
#5 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:820:7 (test_rmf_fleet_adapter+0x6ada64)
#6 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#7 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#8 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#9 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#10 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#11 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#12 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#13 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#14 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:58:17 in rmf_rxcpp::RxCppExecutor::spin()::'lambda'()::operator()() const
==================
1628132093.001403 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Read of size 1 at 0x7b3c00000a30 by thread T13:
#0 rxcpp::schedulers::recurse::is_allowed() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:78:16 (test_rmf_fleet_adapter+0x6f00a3)
#1 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:713:20 (test_rmf_fleet_adapter+0x6f00a3)
#2 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6efcf1)
#3 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70e790)
#4 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x70e790)
#5 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x70e790)
#6 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x70e790)
#7 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x70e790)
#8 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#9 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#10 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#11 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#12 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#13 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#14 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#15 <null> <null> (libstdc++.so.6+0xd6de3)
Previous write of size 1 at 0x7b3c00000a30 by main thread (mutexes: write M1838):
#0 rxcpp::schedulers::recursion::reset(bool) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:113:19 (test_rmf_fleet_adapter+0x70c938)
#1 rxcpp::schedulers::new_thread::new_worker::schedule(std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >, rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:137:26 (test_rmf_fleet_adapter+0x70c938)
#2 rxcpp::schedulers::new_thread::new_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:130:13 (test_rmf_fleet_adapter+0x70c803)
#3 std::enable_if<((detail::is_action_function<rxcpp::composite_subscription const&>::value) || (is_subscription<rxcpp::composite_subscription const&>::value)) && (!(is_schedulable<rxcpp::composite_subscription const&>::value)), void>::type rxcpp::schedulers::worker::schedule<rxcpp::composite_subscription const&, rxcpp::schedulers::action const&>(rxcpp::composite_subscription const&, rxcpp::schedulers::action const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (test_rmf_fleet_adapter+0x8b40af)
#4 rxcpp::schedulers::event_loop::loop_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:55:24 (test_rmf_fleet_adapter+0x8b2ce6)
#5 std::enable_if<((detail::is_action_function<auto>::value) || (is_subscription<auto>::value)) && (!(is_schedulable<auto>::value)), void>::type rxcpp::schedulers::worker::schedule<rmf_fleet_adapter::agv::FleetUpdateHandle::add_robot(std::shared_ptr<rmf_fleet_adapter::agv::RobotCommandHandle>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rmf_traffic::Profile const&, std::vector<rmf_traffic::agv::Planner::Start, std::allocator<rmf_traffic::agv::Planner::Start> >, std::function<void (std::shared_ptr<rmf_fleet_adapter::agv::RobotUpdateHandle>)>)::$_0::operator()(rmf_traffic::schedule::Participant) const::'lambda'(auto const&)>(auto&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (librmf_fleet_adapter.so+0x5e6719)
#6 rmf_fleet_adapter::agv::FleetUpdateHandle::add_robot(std::shared_ptr<rmf_fleet_adapter::agv::RobotCommandHandle>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rmf_traffic::Profile const&, std::vector<rmf_traffic::agv::Planner::Start, std::allocator<rmf_traffic::agv::Planner::Start> >, std::function<void (std::shared_ptr<rmf_fleet_adapter::agv::RobotUpdateHandle>)>)::$_0::operator()(rmf_traffic::schedule::Participant) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/FleetUpdateHandle.cpp:1038:14 (librmf_fleet_adapter.so+0x5e6719)
#7 std::_Function_handler<void (rmf_traffic::schedule::Participant), rmf_fleet_adapter::agv::FleetUpdateHandle::add_robot(std::shared_ptr<rmf_fleet_adapter::agv::RobotCommandHandle>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rmf_traffic::Profile const&, std::vector<rmf_traffic::agv::Planner::Start, std::allocator<rmf_traffic::agv::Planner::Start> >, std::function<void (std::shared_ptr<rmf_fleet_adapter::agv::RobotUpdateHandle>)>)::$_0>::_M_invoke(std::_Any_data const&, rmf_traffic::schedule::Participant&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (librmf_fleet_adapter.so+0x5e6719)
#8 std::function<void (rmf_traffic::schedule::Participant)>::operator()(rmf_traffic::schedule::Participant) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (librmf_fleet_adapter.so+0x87e008)
#9 rmf_fleet_adapter::agv::SimpleParticipantFactory::async_make_participant(rmf_traffic::schedule::ParticipantDescription, std::function<void (rmf_traffic::schedule::Participant)>) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/../internal_FleetUpdateHandle.hpp:91:5 (librmf_fleet_adapter.so+0x87e008)
#10 rmf_fleet_adapter::agv::FleetUpdateHandle::add_robot(std::shared_ptr<rmf_fleet_adapter::agv::RobotCommandHandle>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rmf_traffic::Profile const&, std::vector<rmf_traffic::agv::Planner::Start, std::allocator<rmf_traffic::agv::Planner::Start> >, std::function<void (std::shared_ptr<rmf_fleet_adapter::agv::RobotUpdateHandle>)>) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/FleetUpdateHandle.cpp:999:19 (librmf_fleet_adapter.so+0x5e01b9)
#11 rmf_fleet_adapter::phases::test::MockAdapterFixture::add_robot(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::optional<rmf_traffic::Profile>) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/MockAdapterFixture.cpp:146:16 (test_rmf_fleet_adapter+0x6465fe)
#12 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorOpen.cpp:69:21 (test_rmf_fleet_adapter+0x653b3a)
#13 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:821:5 (test_rmf_fleet_adapter+0x6ada9f)
#14 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#15 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#16 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#17 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#18 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#19 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#20 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#21 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#22 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Location is heap block of size 240 at 0x7b3c00000960 allocated by main thread:
#0 operator new(unsigned long) <null> (test_rmf_fleet_adapter+0x58ee6b)
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (test_rmf_fleet_adapter+0x70ca18)
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (test_rmf_fleet_adapter+0x70ca18)
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/allocated_ptr.h:97:21 (test_rmf_fleet_adapter+0x70ca18)
#4 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(rxcpp::schedulers::new_thread::new_worker::new_worker_state*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:677:19 (test_rmf_fleet_adapter+0x70ca18)
#5 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70ca18)
#6 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70baa0)
#7 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> const&, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70baa0)
#8 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state> std::make_shared<rxcpp::schedulers::new_thread::new_worker::new_worker_state, rxcpp::composite_subscription&>(rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70baa0)
#9 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:68:21 (test_rmf_fleet_adapter+0x70baa0)
#10 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#11 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#12 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#13 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#14 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#15 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#16 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#17 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#18 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#19 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#20 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#21 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#22 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#23 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#24 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#25 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#26 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#27 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#28 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#29 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#30 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#31 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#32 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#33 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#34 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#35 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#36 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#37 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#38 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#39 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#40 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#41 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#42 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#43 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#44 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M1838 (0x7b3c000009a8) created at:
#0 pthread_mutex_lock <null> (test_rmf_fleet_adapter+0x51f326)
#1 __gthread_mutex_lock(pthread_mutex_t*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:749:12 (test_rmf_fleet_adapter+0x70e341)
#2 std::mutex::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_mutex.h:100:17 (test_rmf_fleet_adapter+0x70e341)
#3 std::unique_lock<std::mutex>::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:141:17 (test_rmf_fleet_adapter+0x70e341)
#4 std::unique_lock<std::mutex>::unique_lock(std::mutex&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:71:2 (test_rmf_fleet_adapter+0x70e341)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:97:50 (test_rmf_fleet_adapter+0x70e341)
#6 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#7 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#8 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#9 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#10 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#11 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#12 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#13 <null> <null> (libstdc++.so.6+0xd6de3)
Thread T13 (tid=103732, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)::operator()(std::function<void ()>) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:148:20 (test_rmf_fleet_adapter+0x70b228)
#3 std::_Function_handler<std::thread (std::function<void ()>), rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)>::_M_invoke(std::_Any_data const&, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (test_rmf_fleet_adapter+0x70b228)
#4 std::function<std::thread (std::function<void ()>)>::operator()(std::function<void ()>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70bd7b)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:87:29 (test_rmf_fleet_adapter+0x70bd7b)
#6 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#7 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#8 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#9 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#10 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#11 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#12 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#13 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#14 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#15 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#16 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#17 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#18 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#19 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#20 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#21 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#22 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#23 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#24 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#25 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#26 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#27 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#28 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#29 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#30 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#31 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#32 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#33 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#34 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#35 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#36 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#37 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#38 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#39 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#40 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:78:16 in rxcpp::schedulers::recurse::is_allowed() const
==================
[INFO] [1628132093.044340478] [test_node_1]: Added a robot named [test_robot] with participant ID [0]
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 1 at 0x7b580000f278 by main thread (mutexes: write M122295809319434368):
#0 rmf_rxcpp::RxCppExecutor::stop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:107:15 (librmf_fleet_adapter.so+0x51db3d)
#1 rmf_rxcpp::Transport::stop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:225:18 (librmf_fleet_adapter.so+0x51db3d)
#2 rmf_fleet_adapter::agv::test::MockAdapter::stop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:298:17 (librmf_fleet_adapter.so+0x86f5ea)
#3 rmf_fleet_adapter::agv::test::MockAdapter::~MockAdapter() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:329:3 (librmf_fleet_adapter.so+0x86f5ea)
#4 void __gnu_cxx::new_allocator<rmf_fleet_adapter::agv::test::MockAdapter>::destroy<rmf_fleet_adapter::agv::test::MockAdapter>(rmf_fleet_adapter::agv::test::MockAdapter*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:153:10 (test_rmf_fleet_adapter+0x648fdd)
#5 void std::allocator_traits<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter> >::destroy<rmf_fleet_adapter::agv::test::MockAdapter>(std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>&, rmf_fleet_adapter::agv::test::MockAdapter*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:497:8 (test_rmf_fleet_adapter+0x648fdd)
#6 std::_Sp_counted_ptr_inplace<rmf_fleet_adapter::agv::test::MockAdapter, std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:557:2 (test_rmf_fleet_adapter+0x648fdd)
#7 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 (test_rmf_fleet_adapter+0x648a72)
#8 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 (test_rmf_fleet_adapter+0x648a72)
#9 std::__shared_ptr<rmf_fleet_adapter::agv::test::MockAdapter, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 (test_rmf_fleet_adapter+0x648a72)
#10 rmf_fleet_adapter::phases::test::MockAdapterFixture::Data::~Data() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/MockAdapterFixture.hpp:34:10 (test_rmf_fleet_adapter+0x648a72)
#11 void __gnu_cxx::new_allocator<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data>::destroy<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data>(rmf_fleet_adapter::phases::test::MockAdapterFixture::Data*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:153:10 (test_rmf_fleet_adapter+0x64865d)
#12 void std::allocator_traits<std::allocator<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data> >::destroy<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data>(std::allocator<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data>&, rmf_fleet_adapter::phases::test::MockAdapterFixture::Data*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:497:8 (test_rmf_fleet_adapter+0x64865d)
#13 std::_Sp_counted_ptr_inplace<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data, std::allocator<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data>, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:557:2 (test_rmf_fleet_adapter+0x64865d)
#14 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 (test_rmf_fleet_adapter+0x6473ee)
#15 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 (test_rmf_fleet_adapter+0x6473ee)
#16 std::__shared_ptr<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 (test_rmf_fleet_adapter+0x6473ee)
#17 std::__shared_ptr<rmf_fleet_adapter::phases::test::MockAdapterFixture::Data, (__gnu_cxx::_Lock_policy)2>::reset() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1287:9 (test_rmf_fleet_adapter+0x6473ee)
#18 rmf_fleet_adapter::phases::test::MockAdapterFixture::~MockAdapterFixture() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/MockAdapterFixture.cpp:164:8 (test_rmf_fleet_adapter+0x6473ee)
#19 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:822:3 (test_rmf_fleet_adapter+0x6adaa8)
#20 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#21 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#22 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#23 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#24 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#25 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#26 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#27 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#28 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Previous read of size 1 at 0x7b580000f278 by thread T35 (mutexes: write M126517882430485120):
#0 rmf_rxcpp::RxCppExecutor::spin()::'lambda'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:58:17 (librmf_fleet_adapter.so+0x5fdce3)
#1 rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:88:43 (librmf_fleet_adapter.so+0x5fe193)
#2 bool std::condition_variable::wait_until<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()>(std::unique_lock<std::mutex>&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&, rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/condition_variable:137:10 (librmf_fleet_adapter.so+0x5fe193)
#3 bool std::condition_variable::wait_for<long, std::ratio<1l, 1000l>, rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()>(std::unique_lock<std::mutex>&, std::chrono::duration<long, std::ratio<1l, 1000l> > const&, rmf_rxcpp::RxCppExecutor::spin()::'lambda0'()) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/condition_variable:165:9 (librmf_fleet_adapter.so+0x5fe193)
#4 rmf_rxcpp::RxCppExecutor::spin() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:86:15 (librmf_fleet_adapter.so+0x5fdb6e)
#5 rmf_rxcpp::Transport::start()::'lambda'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:212:22 (librmf_fleet_adapter.so+0x52d532)
#6 void std::__invoke_impl<void, rmf_rxcpp::Transport::start()::'lambda'()>(std::__invoke_other, rmf_rxcpp::Transport::start()::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (librmf_fleet_adapter.so+0x52d532)
#7 std::__invoke_result<rmf_rxcpp::Transport::start()::'lambda'()>::type std::__invoke<rmf_rxcpp::Transport::start()::'lambda'()>(rmf_rxcpp::Transport::start()::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (librmf_fleet_adapter.so+0x52d532)
#8 void std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (librmf_fleet_adapter.so+0x52d532)
#9 std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (librmf_fleet_adapter.so+0x52d532)
#10 std::thread::_State_impl<std::thread::_Invoker<std::tuple<rmf_rxcpp::Transport::start()::'lambda'()> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (librmf_fleet_adapter.so+0x52d532)
#11 <null> <null> (libstdc++.so.6+0xd6de3)
Location is heap block of size 728 at 0x7b580000f000 allocated by main thread:
#0 operator new(unsigned long) <null> (test_rmf_fleet_adapter+0x58ee6b)
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (librmf_fleet_adapter.so+0x5fd00b)
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (librmf_fleet_adapter.so+0x5fd00b)
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/allocated_ptr.h:97:21 (librmf_fleet_adapter.so+0x5fd00b)
#4 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(rmf_rxcpp::RxCppExecutor*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_rxcpp::RxCppExecutor> >, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:677:19 (librmf_fleet_adapter.so+0x5fd00b)
#5 std::__shared_ptr<rmf_rxcpp::RxCppExecutor, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(std::_Sp_alloc_shared_tag<std::allocator<rmf_rxcpp::RxCppExecutor> >, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (librmf_fleet_adapter.so+0x5fd00b)
#6 std::shared_ptr<rmf_rxcpp::RxCppExecutor>::shared_ptr<std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(std::_Sp_alloc_shared_tag<std::allocator<rmf_rxcpp::RxCppExecutor> >, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (librmf_fleet_adapter.so+0x5fb9f6)
#7 std::shared_ptr<rmf_rxcpp::RxCppExecutor> std::allocate_shared<rmf_rxcpp::RxCppExecutor, std::allocator<rmf_rxcpp::RxCppExecutor>, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(std::allocator<rmf_rxcpp::RxCppExecutor> const&, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (librmf_fleet_adapter.so+0x5fb9f6)
#8 std::shared_ptr<rmf_rxcpp::RxCppExecutor> std::make_shared<rmf_rxcpp::RxCppExecutor, rxcpp::schedulers::worker&, rclcpp::ExecutorOptions>(rxcpp::schedulers::worker&, rclcpp::ExecutorOptions&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (librmf_fleet_adapter.so+0x5fb9f6)
#9 rmf_rxcpp::Transport::Transport(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:190:15 (librmf_fleet_adapter.so+0x5fb9f6)
#10 rmf_fleet_adapter::agv::Node::Node(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:102:3 (librmf_fleet_adapter.so+0x5f6e56)
#11 rmf_fleet_adapter::agv::Node::make(rxcpp::schedulers::worker, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/Node.cpp:33:9 (librmf_fleet_adapter.so+0x5f6e56)
#12 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:206:10 (librmf_fleet_adapter.so+0x872cc0)
#13 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#14 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#15 void __gnu_cxx::new_allocator<rmf_fleet_adapter::agv::test::MockAdapter>::construct<rmf_fleet_adapter::agv::test::MockAdapter, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(rmf_fleet_adapter::agv::test::MockAdapter*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x648e28)
#16 void std::allocator_traits<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter> >::construct<rmf_fleet_adapter::agv::test::MockAdapter, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>&, rmf_fleet_adapter::agv::test::MockAdapter*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x648e28)
#17 std::_Sp_counted_ptr_inplace<rmf_fleet_adapter::agv::test::MockAdapter, std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x648e28)
#18 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rmf_fleet_adapter::agv::test::MockAdapter, std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(rmf_fleet_adapter::agv::test::MockAdapter*&, std::_Sp_alloc_shared_tag<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x648e28)
#19 std::__shared_ptr<rmf_fleet_adapter::agv::test::MockAdapter, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x648e28)
#20 std::shared_ptr<rmf_fleet_adapter::agv::test::MockAdapter>::shared_ptr<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(std::_Sp_alloc_shared_tag<std::allocator<rmf_fleet_adapter::agv::test::MockAdapter> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x64314d)
#21 std::shared_ptr<rmf_fleet_adapter::agv::test::MockAdapter> std::allocate_shared<rmf_fleet_adapter::agv::test::MockAdapter, std::allocator<rmf_fleet_adapter::agv::test::MockAdapter>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(std::allocator<rmf_fleet_adapter::agv::test::MockAdapter> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x64314d)
#22 std::shared_ptr<rmf_fleet_adapter::agv::test::MockAdapter> std::make_shared<rmf_fleet_adapter::agv::test::MockAdapter, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, rclcpp::NodeOptions&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, rclcpp::NodeOptions&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x64314d)
#23 rmf_fleet_adapter::phases::test::MockAdapterFixture::MockAdapterFixture() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/MockAdapterFixture.cpp:38:19 (test_rmf_fleet_adapter+0x64314d)
#24 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorOpen.cpp:55:1 (test_rmf_fleet_adapter+0x6ada64)
#25 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:820:7 (test_rmf_fleet_adapter+0x6ada64)
#26 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#27 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#28 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#29 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#30 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#31 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#32 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#33 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#34 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M122295809319434368 is already destroyed.
Mutex M126517882430485120 is already destroyed.
Thread T35 (tid=103772, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rmf_fleet_adapter::agv::test::MockAdapter::start() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:292:17 (librmf_fleet_adapter.so+0x86ee60)
#3 rmf_fleet_adapter::phases::test::MockAdapterFixture::MockAdapterFixture() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/MockAdapterFixture.cpp:118:18 (test_rmf_fleet_adapter+0x644cea)
#4 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorOpen.cpp:55:1 (test_rmf_fleet_adapter+0x6ada64)
#5 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:820:7 (test_rmf_fleet_adapter+0x6ada64)
#6 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#7 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#8 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#9 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#10 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#11 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#12 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#13 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#14 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/Transport.hpp:107:15 in rmf_rxcpp::RxCppExecutor::stop()
==================
1628132093.124421 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
[INFO] [1628132093.142529999] [test_node_2]: Added a robot named [test_robot] with participant ID [0]
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 1 at 0x7b3c00000670 by thread T14 (mutexes: write M1801):
#0 rxcpp::schedulers::recursion::reset(bool) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:113:19 (test_rmf_fleet_adapter+0x70c938)
#1 rxcpp::schedulers::new_thread::new_worker::schedule(std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >, rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:137:26 (test_rmf_fleet_adapter+0x70c938)
#2 rxcpp::schedulers::new_thread::new_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:130:13 (test_rmf_fleet_adapter+0x70c803)
#3 std::enable_if<((detail::is_action_function<rxcpp::composite_subscription const&>::value) || (is_subscription<rxcpp::composite_subscription const&>::value)) && (!(is_schedulable<rxcpp::composite_subscription const&>::value)), void>::type rxcpp::schedulers::worker::schedule<rxcpp::composite_subscription const&, rxcpp::schedulers::action const&>(rxcpp::composite_subscription const&, rxcpp::schedulers::action const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (test_rmf_fleet_adapter+0x8b40af)
#4 rxcpp::schedulers::event_loop::loop_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:55:24 (test_rmf_fleet_adapter+0x8b2ce6)
#5 std::enable_if<((detail::is_action_function<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::value) || (is_subscription<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::value)) && (!(is_schedulable<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::value)), void>::type rxcpp::schedulers::worker::schedule<rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::observe_on_state::ensure_processing(std::unique_lock<std::mutex>&) const::'lambda'(rxcpp::schedulers::schedulable const&)&>(rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> >&&, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::observe_on_state::ensure_processing(std::unique_lock<std::mutex>&) const::'lambda'(rxcpp::schedulers::schedulable const&)&...) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (test_rmf_fleet_adapter+0x8dfc66)
#6 rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::observe_on_state::ensure_processing(std::unique_lock<std::mutex>&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-observe_on.hpp:174:31 (test_rmf_fleet_adapter+0x8df197)
#7 rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::on_next(rmf_fleet_adapter::jobs::Planning::Result) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-observe_on.hpp:189:20 (test_rmf_fleet_adapter+0x8eecce)
#8 rxcpp::detail::OnNextForward<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void>::operator()(rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >&, rmf_fleet_adapter::jobs::Planning::Result&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observer.hpp:67:11 (test_rmf_fleet_adapter+0x8ee830)
#9 rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void>::on_next(rmf_fleet_adapter::jobs::Planning::Result&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observer.hpp:245:9 (test_rmf_fleet_adapter+0x8ee830)
#10 void rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> >::nextdetacher::operator()<rmf_fleet_adapter::jobs::Planning::Result>(rmf_fleet_adapter::jobs::Planning::Result) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscriber.hpp:54:35 (test_rmf_fleet_adapter+0x8ee830)
#11 void rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> >::on_next<rmf_fleet_adapter::jobs::Planning::Result>(rmf_fleet_adapter::jobs::Planning::Result&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscriber.hpp:181:9 (test_rmf_fleet_adapter+0x8ec8aa)
#12 void rmf_fleet_adapter::jobs::Planning::operator()<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> >, rxcpp::schedulers::worker>(rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > const&, rxcpp::schedulers::worker const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/services/../jobs/detail/impl_Planning.hpp:47:5 (test_rmf_fleet_adapter+0x8ec4fc)
#13 auto void rmf_rxcpp::detail::schedule_job<rmf_fleet_adapter::jobs::Planning, rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > >(std::weak_ptr<rmf_fleet_adapter::jobs::Planning> const&, rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > const&, rxcpp::schedulers::worker const&, std::enable_if<IsAsyncAction<rmf_fleet_adapter::jobs::Planning, rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > >::value, void>::type*)::'lambda'(rmf_fleet_adapter::jobs::Planning const&)::operator()<rxcpp::schedulers::schedulable>(rmf_fleet_adapter::jobs::Planning const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/detail/RxJobsDetail.hpp:41:9 (test_rmf_fleet_adapter+0x8ebe34)
#14 std::_Function_handler<void (rxcpp::schedulers::schedulable const&), void rmf_rxcpp::detail::schedule_job<rmf_fleet_adapter::jobs::Planning, rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > >(std::weak_ptr<rmf_fleet_adapter::jobs::Planning> const&, rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > const&, rxcpp::schedulers::worker const&, std::enable_if<IsAsyncAction<rmf_fleet_adapter::jobs::Planning, rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > >::value, void>::type*)::'lambda'(rmf_fleet_adapter::jobs::Planning const&)>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x8ebe34)
#15 std::function<void (rxcpp::schedulers::schedulable const&)>::operator()(rxcpp::schedulers::schedulable const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x6f0090)
#16 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:712:13 (test_rmf_fleet_adapter+0x6f0090)
#17 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6efcf1)
#18 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70e790)
#19 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x70e790)
#20 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x70e790)
#21 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x70e790)
#22 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x70e790)
#23 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#24 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#25 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#26 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#27 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#28 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#29 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#30 <null> <null> (libstdc++.so.6+0xd6de3)
Previous read of size 1 at 0x7b3c00000670 by thread T9:
#0 rxcpp::schedulers::recurse::is_allowed() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:78:16 (test_rmf_fleet_adapter+0x6f00a3)
#1 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:713:20 (test_rmf_fleet_adapter+0x6f00a3)
#2 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6efcf1)
#3 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70e790)
#4 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x70e790)
#5 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x70e790)
#6 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x70e790)
#7 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x70e790)
#8 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#9 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#10 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#11 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#12 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#13 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#14 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#15 <null> <null> (libstdc++.so.6+0xd6de3)
Location is heap block of size 240 at 0x7b3c000005a0 allocated by main thread:
#0 operator new(unsigned long) <null> (test_rmf_fleet_adapter+0x58ee6b)
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (test_rmf_fleet_adapter+0x70ca18)
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (test_rmf_fleet_adapter+0x70ca18)
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/allocated_ptr.h:97:21 (test_rmf_fleet_adapter+0x70ca18)
#4 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(rxcpp::schedulers::new_thread::new_worker::new_worker_state*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:677:19 (test_rmf_fleet_adapter+0x70ca18)
#5 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70ca18)
#6 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70baa0)
#7 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> const&, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70baa0)
#8 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state> std::make_shared<rxcpp::schedulers::new_thread::new_worker::new_worker_state, rxcpp::composite_subscription&>(rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70baa0)
#9 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:68:21 (test_rmf_fleet_adapter+0x70baa0)
#10 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#11 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#12 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#13 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#14 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#15 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#16 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#17 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#18 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#19 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#20 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#21 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#22 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#23 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#24 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#25 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#26 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#27 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#28 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#29 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#30 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#31 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#32 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#33 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#34 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#35 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#36 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#37 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#38 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#39 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#40 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#41 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#42 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#43 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#44 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M1801 (0x7b3c000005e8) created at:
#0 pthread_mutex_lock <null> (test_rmf_fleet_adapter+0x51f326)
#1 __gthread_mutex_lock(pthread_mutex_t*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:749:12 (test_rmf_fleet_adapter+0x70e341)
#2 std::mutex::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_mutex.h:100:17 (test_rmf_fleet_adapter+0x70e341)
#3 std::unique_lock<std::mutex>::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:141:17 (test_rmf_fleet_adapter+0x70e341)
#4 std::unique_lock<std::mutex>::unique_lock(std::mutex&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:71:2 (test_rmf_fleet_adapter+0x70e341)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:97:50 (test_rmf_fleet_adapter+0x70e341)
#6 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#7 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#8 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#9 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#10 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#11 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#12 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#13 <null> <null> (libstdc++.so.6+0xd6de3)
Thread T14 (tid=103733, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)::operator()(std::function<void ()>) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:148:20 (test_rmf_fleet_adapter+0x70b228)
#3 std::_Function_handler<std::thread (std::function<void ()>), rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)>::_M_invoke(std::_Any_data const&, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (test_rmf_fleet_adapter+0x70b228)
#4 std::function<std::thread (std::function<void ()>)>::operator()(std::function<void ()>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70bd7b)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:87:29 (test_rmf_fleet_adapter+0x70bd7b)
#6 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#7 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#8 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#9 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#10 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#11 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#12 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#13 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#14 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#15 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#16 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#17 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#18 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#19 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#20 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#21 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#22 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#23 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#24 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#25 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#26 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#27 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#28 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#29 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#30 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#31 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#32 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#33 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#34 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#35 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#36 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#37 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#38 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#39 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#40 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T9 (tid=103728, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)::operator()(std::function<void ()>) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:148:20 (test_rmf_fleet_adapter+0x70b228)
#3 std::_Function_handler<std::thread (std::function<void ()>), rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)>::_M_invoke(std::_Any_data const&, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (test_rmf_fleet_adapter+0x70b228)
#4 std::function<std::thread (std::function<void ()>)>::operator()(std::function<void ()>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70bd7b)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:87:29 (test_rmf_fleet_adapter+0x70bd7b)
#6 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#7 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#8 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#9 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#10 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#11 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#12 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#13 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#14 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#15 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#16 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#17 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#18 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#19 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#20 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#21 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#22 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#23 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#24 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#25 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#26 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#27 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#28 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#29 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#30 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#31 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#32 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#33 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#34 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#35 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#36 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#37 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#38 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#39 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#40 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:113:19 in rxcpp::schedulers::recursion::reset(bool) const
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Read of size 1 at 0x7b3c00000670 by thread T9:
#0 rxcpp::schedulers::recurse::is_allowed() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:78:16 (test_rmf_fleet_adapter+0x6f00a3)
#1 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:713:20 (test_rmf_fleet_adapter+0x6f00a3)
#2 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6efcf1)
#3 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70e790)
#4 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x70e790)
#5 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x70e790)
#6 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x70e790)
#7 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x70e790)
#8 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#9 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#10 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#11 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#12 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#13 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#14 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#15 <null> <null> (libstdc++.so.6+0xd6de3)
Previous write of size 1 at 0x7b3c00000670 by thread T14 (mutexes: write M1801):
#0 rxcpp::schedulers::recursion::reset(bool) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:113:19 (test_rmf_fleet_adapter+0x70c938)
#1 rxcpp::schedulers::new_thread::new_worker::schedule(std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >, rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:137:26 (test_rmf_fleet_adapter+0x70c938)
#2 rxcpp::schedulers::new_thread::new_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:130:13 (test_rmf_fleet_adapter+0x70c803)
#3 std::enable_if<((detail::is_action_function<rxcpp::composite_subscription const&>::value) || (is_subscription<rxcpp::composite_subscription const&>::value)) && (!(is_schedulable<rxcpp::composite_subscription const&>::value)), void>::type rxcpp::schedulers::worker::schedule<rxcpp::composite_subscription const&, rxcpp::schedulers::action const&>(rxcpp::composite_subscription const&, rxcpp::schedulers::action const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (test_rmf_fleet_adapter+0x8b40af)
#4 rxcpp::schedulers::event_loop::loop_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:55:24 (test_rmf_fleet_adapter+0x8b2ce6)
#5 std::enable_if<((detail::is_action_function<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::value) || (is_subscription<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::value)) && (!(is_schedulable<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::value)), void>::type rxcpp::schedulers::worker::schedule<rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::observe_on_state::ensure_processing(std::unique_lock<std::mutex>&) const::'lambda'(rxcpp::schedulers::schedulable const&)&>(rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> >&&, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::observe_on_state::ensure_processing(std::unique_lock<std::mutex>&) const::'lambda'(rxcpp::schedulers::schedulable const&)&...) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (test_rmf_fleet_adapter+0x8dfc66)
#6 rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::observe_on_state::ensure_processing(std::unique_lock<std::mutex>&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-observe_on.hpp:174:31 (test_rmf_fleet_adapter+0x8df197)
#7 rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >::on_next(rmf_fleet_adapter::jobs::Planning::Result) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-observe_on.hpp:189:20 (test_rmf_fleet_adapter+0x8eecce)
#8 rxcpp::detail::OnNextForward<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void>::operator()(rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >&, rmf_fleet_adapter::jobs::Planning::Result&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observer.hpp:67:11 (test_rmf_fleet_adapter+0x8ee830)
#9 rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void>::on_next(rmf_fleet_adapter::jobs::Planning::Result&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observer.hpp:245:9 (test_rmf_fleet_adapter+0x8ee830)
#10 void rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> >::nextdetacher::operator()<rmf_fleet_adapter::jobs::Planning::Result>(rmf_fleet_adapter::jobs::Planning::Result) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscriber.hpp:54:35 (test_rmf_fleet_adapter+0x8ee830)
#11 void rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> >::on_next<rmf_fleet_adapter::jobs::Planning::Result>(rmf_fleet_adapter::jobs::Planning::Result&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscriber.hpp:181:9 (test_rmf_fleet_adapter+0x8ec8aa)
#12 void rmf_fleet_adapter::jobs::Planning::operator()<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> >, rxcpp::schedulers::worker>(rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > const&, rxcpp::schedulers::worker const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/services/../jobs/detail/impl_Planning.hpp:47:5 (test_rmf_fleet_adapter+0x8ec4fc)
#13 auto void rmf_rxcpp::detail::schedule_job<rmf_fleet_adapter::jobs::Planning, rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > >(std::weak_ptr<rmf_fleet_adapter::jobs::Planning> const&, rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > const&, rxcpp::schedulers::worker const&, std::enable_if<IsAsyncAction<rmf_fleet_adapter::jobs::Planning, rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > >::value, void>::type*)::'lambda'(rmf_fleet_adapter::jobs::Planning const&)::operator()<rxcpp::schedulers::schedulable>(rmf_fleet_adapter::jobs::Planning const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/detail/RxJobsDetail.hpp:41:9 (test_rmf_fleet_adapter+0x8ebe34)
#14 std::_Function_handler<void (rxcpp::schedulers::schedulable const&), void rmf_rxcpp::detail::schedule_job<rmf_fleet_adapter::jobs::Planning, rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > >(std::weak_ptr<rmf_fleet_adapter::jobs::Planning> const&, rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > const&, rxcpp::schedulers::worker const&, std::enable_if<IsAsyncAction<rmf_fleet_adapter::jobs::Planning, rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::operators::detail::observe_on<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::identity_one_worker>::observe_on_observer<rxcpp::subscriber<rmf_fleet_adapter::jobs::Planning::Result, rxcpp::observer<rmf_fleet_adapter::jobs::Planning::Result, void, void, void, void> > >, void, void, void> > >::value, void>::type*)::'lambda'(rmf_fleet_adapter::jobs::Planning const&)>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x8ebe34)
#15 std::function<void (rxcpp::schedulers::schedulable const&)>::operator()(rxcpp::schedulers::schedulable const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x6f0090)
#16 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:712:13 (test_rmf_fleet_adapter+0x6f0090)
#17 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6efcf1)
#18 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70e790)
#19 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x70e790)
#20 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x70e790)
#21 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x70e790)
#22 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x70e790)
#23 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#24 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#25 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#26 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#27 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#28 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#29 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#30 <null> <null> (libstdc++.so.6+0xd6de3)
Location is heap block of size 240 at 0x7b3c000005a0 allocated by main thread:
#0 operator new(unsigned long) <null> (test_rmf_fleet_adapter+0x58ee6b)
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (test_rmf_fleet_adapter+0x70ca18)
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (test_rmf_fleet_adapter+0x70ca18)
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/allocated_ptr.h:97:21 (test_rmf_fleet_adapter+0x70ca18)
#4 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(rxcpp::schedulers::new_thread::new_worker::new_worker_state*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:677:19 (test_rmf_fleet_adapter+0x70ca18)
#5 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70ca18)
#6 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70baa0)
#7 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> const&, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70baa0)
#8 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state> std::make_shared<rxcpp::schedulers::new_thread::new_worker::new_worker_state, rxcpp::composite_subscription&>(rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70baa0)
#9 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:68:21 (test_rmf_fleet_adapter+0x70baa0)
#10 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#11 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#12 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#13 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#14 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#15 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#16 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#17 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#18 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#19 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#20 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#21 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#22 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#23 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#24 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#25 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#26 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#27 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#28 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#29 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#30 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#31 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#32 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#33 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#34 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#35 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#36 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#37 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#38 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#39 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#40 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#41 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#42 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#43 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#44 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M1801 (0x7b3c000005e8) created at:
#0 pthread_mutex_lock <null> (test_rmf_fleet_adapter+0x51f326)
#1 __gthread_mutex_lock(pthread_mutex_t*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:749:12 (test_rmf_fleet_adapter+0x70e341)
#2 std::mutex::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_mutex.h:100:17 (test_rmf_fleet_adapter+0x70e341)
#3 std::unique_lock<std::mutex>::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:141:17 (test_rmf_fleet_adapter+0x70e341)
#4 std::unique_lock<std::mutex>::unique_lock(std::mutex&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_lock.h:71:2 (test_rmf_fleet_adapter+0x70e341)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:97:50 (test_rmf_fleet_adapter+0x70e341)
#6 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#7 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#8 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#9 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#10 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#11 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#12 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#13 <null> <null> (libstdc++.so.6+0xd6de3)
Thread T9 (tid=103728, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)::operator()(std::function<void ()>) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:148:20 (test_rmf_fleet_adapter+0x70b228)
#3 std::_Function_handler<std::thread (std::function<void ()>), rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)>::_M_invoke(std::_Any_data const&, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (test_rmf_fleet_adapter+0x70b228)
#4 std::function<std::thread (std::function<void ()>)>::operator()(std::function<void ()>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70bd7b)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:87:29 (test_rmf_fleet_adapter+0x70bd7b)
#6 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#7 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#8 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#9 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#10 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#11 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#12 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#13 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#14 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#15 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#16 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#17 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#18 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#19 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#20 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#21 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#22 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#23 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#24 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#25 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#26 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#27 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#28 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#29 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#30 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#31 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#32 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#33 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#34 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#35 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#36 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#37 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#38 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#39 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#40 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Thread T14 (tid=103733, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)::operator()(std::function<void ()>) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:148:20 (test_rmf_fleet_adapter+0x70b228)
#3 std::_Function_handler<std::thread (std::function<void ()>), rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)>::_M_invoke(std::_Any_data const&, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (test_rmf_fleet_adapter+0x70b228)
#4 std::function<std::thread (std::function<void ()>)>::operator()(std::function<void ()>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70bd7b)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:87:29 (test_rmf_fleet_adapter+0x70bd7b)
#6 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#7 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#8 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#9 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#10 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#11 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#12 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#13 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#14 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#15 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#16 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#17 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#18 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#19 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#20 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#21 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#22 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#23 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#24 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#25 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#26 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#27 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#28 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#29 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#30 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#31 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#32 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#33 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#34 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#35 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#36 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#37 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#38 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#39 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#40 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:78:16 in rxcpp::schedulers::recurse::is_allowed() const
==================
1628132095.177698 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
[INFO] [1628132095.199317759] [test_node_3]: Added a robot named [test_robot] with participant ID [0]
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 1 at 0x7b3c00007ab0 by main thread (mutexes: write M704385889358346792):
#0 rxcpp::schedulers::recursion::reset(bool) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:113:19 (test_rmf_fleet_adapter+0x70c938)
#1 rxcpp::schedulers::new_thread::new_worker::schedule(std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >, rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:137:26 (test_rmf_fleet_adapter+0x70c938)
#2 rxcpp::schedulers::new_thread::new_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:130:13 (test_rmf_fleet_adapter+0x70c803)
#3 std::enable_if<((detail::is_action_function<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >::value) || (is_subscription<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >::value)) && (!(is_schedulable<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >::value)), void>::type rxcpp::schedulers::worker::schedule<void rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>::on_subscribe<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >) const::'lambda'(rxcpp::schedulers::schedulable const&) const&>(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >&&, void rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>::on_subscribe<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >) const::'lambda'(rxcpp::schedulers::schedulable const&) const&...) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (test_rmf_fleet_adapter+0x678de2)
#4 void rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>::on_subscribe<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >) const::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-subscribe_on.hpp:119:24 (test_rmf_fleet_adapter+0x678de2)
#5 rxcpp::static_subscription<void rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>::on_subscribe<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >) const::'lambda0'()>::unsubscribe() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:63:9 (test_rmf_fleet_adapter+0x678de2)
#6 rxcpp::subscription::subscription_state<rxcpp::static_subscription<void rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>::on_subscribe<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >) const::'lambda0'()> >::unsubscribe() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:99:23 (test_rmf_fleet_adapter+0x678de2)
#7 rxcpp::subscription::unsubscribe() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:175:16 (test_rmf_fleet_adapter+0x6e5220)
#8 rxcpp::detail::composite_subscription_inner::composite_subscription_state::unsubscribe()::'lambda'(rxcpp::subscription const&)::operator()(rxcpp::subscription const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:283:35 (test_rmf_fleet_adapter+0x6e5118)
#9 rxcpp::detail::composite_subscription_inner::composite_subscription_state::unsubscribe()::'lambda'(rxcpp::subscription const&) std::for_each<std::_Rb_tree_const_iterator<rxcpp::subscription>, rxcpp::detail::composite_subscription_inner::composite_subscription_state::unsubscribe()::'lambda'(rxcpp::subscription const&)>(std::_Rb_tree_const_iterator<rxcpp::subscription>, std::_Rb_tree_const_iterator<rxcpp::subscription>, rxcpp::detail::composite_subscription_inner::composite_subscription_state::unsubscribe()::'lambda'(rxcpp::subscription const&)) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_algo.h:3876:2 (test_rmf_fleet_adapter+0x6e5118)
#10 rxcpp::detail::composite_subscription_inner::composite_subscription_state::unsubscribe() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:281:17 (test_rmf_fleet_adapter+0x6e5118)
#11 rxcpp::detail::composite_subscription_inner::unsubscribe() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:350:16 (test_rmf_fleet_adapter+0x6e4edc)
#12 rxcpp::subscription::subscription_state<rxcpp::detail::composite_subscription_inner>::unsubscribe() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:99:23 (test_rmf_fleet_adapter+0x6e4edc)
#13 rxcpp::subscription::unsubscribe() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:175:16 (test_rmf_fleet_adapter+0x6e5220)
#14 void rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>::on_subscribe<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >) const::'lambda1'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-subscribe_on.hpp:123:16 (test_rmf_fleet_adapter+0x67a97e)
#15 rxcpp::static_subscription<void rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>::on_subscribe<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >) const::'lambda1'()>::unsubscribe() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:63:9 (test_rmf_fleet_adapter+0x67a97e)
#16 rxcpp::subscription::subscription_state<rxcpp::static_subscription<void rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>::on_subscribe<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >) const::'lambda1'()> >::unsubscribe() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:99:23 (test_rmf_fleet_adapter+0x67a97e)
#17 rxcpp::subscription::unsubscribe() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:175:16 (test_rmf_fleet_adapter+0x6e5220)
#18 rxcpp::detail::composite_subscription_inner::composite_subscription_state::unsubscribe()::'lambda'(rxcpp::subscription const&)::operator()(rxcpp::subscription const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:283:35 (test_rmf_fleet_adapter+0x6e5118)
#19 rxcpp::detail::composite_subscription_inner::composite_subscription_state::unsubscribe()::'lambda'(rxcpp::subscription const&) std::for_each<std::_Rb_tree_const_iterator<rxcpp::subscription>, rxcpp::detail::composite_subscription_inner::composite_subscription_state::unsubscribe()::'lambda'(rxcpp::subscription const&)>(std::_Rb_tree_const_iterator<rxcpp::subscription>, std::_Rb_tree_const_iterator<rxcpp::subscription>, rxcpp::detail::composite_subscription_inner::composite_subscription_state::unsubscribe()::'lambda'(rxcpp::subscription const&)) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_algo.h:3876:2 (test_rmf_fleet_adapter+0x6e5118)
#20 rxcpp::detail::composite_subscription_inner::composite_subscription_state::unsubscribe() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:281:17 (test_rmf_fleet_adapter+0x6e5118)
#21 rxcpp::detail::composite_subscription_inner::unsubscribe() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:350:16 (test_rmf_fleet_adapter+0x6e4edc)
#22 rxcpp::subscription::subscription_state<rxcpp::detail::composite_subscription_inner>::unsubscribe() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:99:23 (test_rmf_fleet_adapter+0x6e4edc)
#23 rxcpp::subscription::unsubscribe() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-subscription.hpp:175:16 (test_rmf_fleet_adapter+0x6e5220)
#24 rmf_rxcpp::subscription_guard::~subscription_guard() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/include/rmf_rxcpp/RxJobs.hpp:87:21 (test_rmf_fleet_adapter+0x6aeda7)
#25 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorOpen.cpp:202:5 (test_rmf_fleet_adapter+0x65b273)
#26 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:821:5 (test_rmf_fleet_adapter+0x6ada9f)
#27 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#28 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#29 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#30 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#31 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#32 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#33 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#34 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#35 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Previous read of size 1 at 0x7b3c00007ab0 by thread T41:
#0 rxcpp::schedulers::recurse::is_allowed() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:78:16 (test_rmf_fleet_adapter+0x6f00a3)
#1 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:713:20 (test_rmf_fleet_adapter+0x6f00a3)
#2 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6efcf1)
#3 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70e790)
#4 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x70e790)
#5 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x70e790)
#6 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x70e790)
#7 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x70e790)
#8 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#9 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#10 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#11 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#12 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#13 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#14 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#15 <null> <null> (libstdc++.so.6+0xd6de3)
Location is heap block of size 240 at 0x7b3c000079e0 allocated by main thread:
#0 operator new(unsigned long) <null> (test_rmf_fleet_adapter+0x58ee6b)
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (test_rmf_fleet_adapter+0x70ca18)
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (test_rmf_fleet_adapter+0x70ca18)
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/allocated_ptr.h:97:21 (test_rmf_fleet_adapter+0x70ca18)
#4 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(rxcpp::schedulers::new_thread::new_worker::new_worker_state*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:677:19 (test_rmf_fleet_adapter+0x70ca18)
#5 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70ca18)
#6 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> >, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70baa0)
#7 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker::new_worker_state, std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state>, rxcpp::composite_subscription&>(std::allocator<rxcpp::schedulers::new_thread::new_worker::new_worker_state> const&, rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70baa0)
#8 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker::new_worker_state> std::make_shared<rxcpp::schedulers::new_thread::new_worker::new_worker_state, rxcpp::composite_subscription&>(rxcpp::composite_subscription&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70baa0)
#9 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:68:21 (test_rmf_fleet_adapter+0x70baa0)
#10 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#11 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#12 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#13 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#14 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#15 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#16 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#17 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#18 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#19 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#20 rxcpp::observe_on_one_worker::create_coordinator(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-observe_on.hpp:313:26 (test_rmf_fleet_adapter+0x70efb8)
#21 void rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>::on_subscribe<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-subscribe_on.hpp:96:49 (test_rmf_fleet_adapter+0x66e425)
#22 rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >::subscribe() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observable.hpp:466:17 (test_rmf_fleet_adapter+0x66d8f9)
#23 rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >::operator()(rxcpp::schedulers::schedulable const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observable.hpp:478:9 (test_rmf_fleet_adapter+0x66e279)
#24 std::_Function_handler<void (rxcpp::schedulers::schedulable const&), rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > > >::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x66e279)
#25 std::function<void (rxcpp::schedulers::schedulable const&)>::operator()(rxcpp::schedulers::schedulable const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x6f0090)
#26 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:712:13 (test_rmf_fleet_adapter+0x6f0090)
#27 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6efcf1)
#28 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x6eab92)
#29 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x6eab92)
#30 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x6eab92)
#31 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x6eab92)
#32 rxcpp::schedulers::current_thread::current_worker::schedule(std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >, rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-currentthread.hpp:210:17 (test_rmf_fleet_adapter+0x6eab92)
#33 rxcpp::schedulers::current_thread::current_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-currentthread.hpp:183:13 (test_rmf_fleet_adapter+0x6ea6a3)
#34 std::enable_if<((detail::is_action_function<rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >&>::value) || (is_subscription<rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >&>::value)) && (!(is_schedulable<rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >&>::value)), void>::type rxcpp::schedulers::worker::schedule<rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >&>(rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (test_rmf_fleet_adapter+0x660814)
#35 rxcpp::composite_subscription rxcpp::observable<long, rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker> >::detail_subscribe<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observable.hpp:551:52 (test_rmf_fleet_adapter+0x660814)
#36 rxcpp::composite_subscription rxcpp::observable<long, rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker> >::subscribe<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5>(rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observable.hpp:671:16 (test_rmf_fleet_adapter+0x660814)
#37 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorOpen.cpp:184:10 (test_rmf_fleet_adapter+0x660814)
#38 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:821:5 (test_rmf_fleet_adapter+0x6ada9f)
#39 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#40 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#41 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#42 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#43 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#44 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#45 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#46 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#47 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Mutex M704385889358346792 is already destroyed.
Thread T41 (tid=103789, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)::operator()(std::function<void ()>) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:148:20 (test_rmf_fleet_adapter+0x70b228)
#3 std::_Function_handler<std::thread (std::function<void ()>), rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)>::_M_invoke(std::_Any_data const&, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (test_rmf_fleet_adapter+0x70b228)
#4 std::function<std::thread (std::function<void ()>)>::operator()(std::function<void ()>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70bd7b)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:87:29 (test_rmf_fleet_adapter+0x70bd7b)
#6 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#7 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#8 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#9 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#10 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#11 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#12 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#13 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#14 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#15 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#16 rxcpp::observe_on_one_worker::create_coordinator(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-observe_on.hpp:313:26 (test_rmf_fleet_adapter+0x70efb8)
#17 void rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>::on_subscribe<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/operators/rx-subscribe_on.hpp:96:49 (test_rmf_fleet_adapter+0x66e425)
#18 rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >::subscribe() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observable.hpp:466:17 (test_rmf_fleet_adapter+0x66d8f9)
#19 rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >::operator()(rxcpp::schedulers::schedulable const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observable.hpp:478:9 (test_rmf_fleet_adapter+0x66e279)
#20 std::_Function_handler<void (rxcpp::schedulers::schedulable const&), rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > > >::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x66e279)
#21 std::function<void (rxcpp::schedulers::schedulable const&)>::operator()(rxcpp::schedulers::schedulable const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x6f0090)
#22 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:712:13 (test_rmf_fleet_adapter+0x6f0090)
#23 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6efcf1)
#24 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x6eab92)
#25 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x6eab92)
#26 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x6eab92)
#27 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x6eab92)
#28 rxcpp::schedulers::current_thread::current_worker::schedule(std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >, rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-currentthread.hpp:210:17 (test_rmf_fleet_adapter+0x6eab92)
#29 rxcpp::schedulers::current_thread::current_worker::schedule(rxcpp::schedulers::schedulable const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-currentthread.hpp:183:13 (test_rmf_fleet_adapter+0x6ea6a3)
#30 std::enable_if<((detail::is_action_function<rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >&>::value) || (is_subscription<rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >&>::value)) && (!(is_schedulable<rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >&>::value)), void>::type rxcpp::schedulers::worker::schedule<rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >&>(rxcpp::detail::safe_subscriber<rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker>, rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:808:12 (test_rmf_fleet_adapter+0x660814)
#31 rxcpp::composite_subscription rxcpp::observable<long, rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker> >::detail_subscribe<rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> > >(rxcpp::subscriber<long, rxcpp::observer<long, rxcpp::detail::stateless_observer_tag, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5, void, void> >) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observable.hpp:551:52 (test_rmf_fleet_adapter+0x660814)
#32 rxcpp::composite_subscription rxcpp::observable<long, rxcpp::operators::detail::subscribe_on<long, rxcpp::observable<long, rxcpp::sources::detail::interval<rxcpp::identity_one_worker> >, rxcpp::observe_on_one_worker> >::subscribe<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5>(rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_5&&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-observable.hpp:671:16 (test_rmf_fleet_adapter+0x660814)
#33 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorOpen.cpp:184:10 (test_rmf_fleet_adapter+0x660814)
#34 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:821:5 (test_rmf_fleet_adapter+0x6ada9f)
#35 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#36 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#37 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#38 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#39 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#40 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#41 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#42 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#43 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:113:19 in rxcpp::schedulers::recursion::reset(bool) const
==================
1628132095.231035 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
[INFO] [1628132095.251578404] [test_node_4]: Added a robot named [test_robot] with participant ID [0]
1628132095.291195 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
[INFO] [1628132095.313157886] [test_node_5]: Added a robot named [test_robot] with participant ID [0]
1628132095.347583 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
[INFO] [1628132095.368818427] [test_node_6]: Added a robot named [test_robot] with participant ID [0]
1628132095.399034 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
[INFO] [1628132095.419077675] [test_node_7]: Added a robot named [test_robot] with participant ID [0]
1628132095.446730 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
[INFO] [1628132095.467634710] [test_node_8]: Added a robot named [test_robot] with participant ID [0]
1628132097.492463 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
[INFO] [1628132097.514042104] [test_node_9]: Added a robot named [test_robot] with participant ID [0]
1628132097.544686 [47] test_rmf_f: using network interface wlp39s0 (udp/192.168.1.125) selected arbitrarily from: wlp39s0, docker0
[INFO] [1628132097.565773451] [test_node_10]: Added a robot named [test_robot] with participant ID [0]
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 8 at 0x7b24000504d0 by main thread:
#0 operator delete(void*) <null> (test_rmf_fleet_adapter+0x58f5be)
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >, std::allocator<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, (__gnu_cxx::_Lock_policy)2> >::deallocate(std::_Sp_counted_ptr_inplace<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >, std::allocator<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, (__gnu_cxx::_Lock_policy)2>*, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:128:2 (test_rmf_fleet_adapter+0x6e241e)
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >, std::allocator<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, (__gnu_cxx::_Lock_policy)2> > >::deallocate(std::allocator<std::_Sp_counted_ptr_inplace<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >, std::allocator<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, (__gnu_cxx::_Lock_policy)2> >&, std::_Sp_counted_ptr_inplace<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >, std::allocator<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, (__gnu_cxx::_Lock_policy)2>*, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:470:13 (test_rmf_fleet_adapter+0x6e241e)
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >, std::allocator<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, (__gnu_cxx::_Lock_policy)2> > >::~__allocated_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/allocated_ptr.h:73:4 (test_rmf_fleet_adapter+0x6e241e)
#4 std::_Sp_counted_ptr_inplace<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >, std::allocator<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, (__gnu_cxx::_Lock_policy)2>::_M_destroy() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:567:7 (test_rmf_fleet_adapter+0x6e241e)
#5 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:171:10 (test_rmf_fleet_adapter+0x6cd2a8)
#6 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 (test_rmf_fleet_adapter+0x6cd2a8)
#7 std::__shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 (test_rmf_fleet_adapter+0x6cd2a8)
#8 rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >::~Subscription() /opt/ros/galactic/include/rclcpp/subscription.hpp:69:7 (test_rmf_fleet_adapter+0x6cd2a8)
#9 void __gnu_cxx::new_allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >::destroy<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >(rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:153:10 (test_rmf_fleet_adapter+0x6c97d7)
#10 void std::allocator_traits<std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > > >::destroy<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >(std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >&, rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:497:8 (test_rmf_fleet_adapter+0x6c97d7)
#11 std::_Sp_counted_ptr_inplace<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:557:2 (test_rmf_fleet_adapter+0x6c97d7)
#12 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 (test_rmf_fleet_adapter+0x722550)
#13 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 (test_rmf_fleet_adapter+0x722550)
#14 std::__shared_ptr<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 (test_rmf_fleet_adapter+0x722550)
#15 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorClose.cpp:243:1 (test_rmf_fleet_adapter+0x722550)
#16 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:821:5 (test_rmf_fleet_adapter+0x7732cf)
#17 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#18 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#19 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#20 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#21 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#22 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#23 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#24 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#25 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Previous read of size 8 at 0x7b24000504d0 by thread T22:
#0 rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >::return_message(std::shared_ptr<void>&) /opt/ros/galactic/include/rclcpp/subscription.hpp:313:31 (test_rmf_fleet_adapter+0x6cdec3)
#1 rclcpp::Executor::execute_subscription(std::shared_ptr<rclcpp::SubscriptionBase>) <null> (librclcpp.so+0x102cb3)
#2 std::_Function_handler<void (rxcpp::schedulers::schedulable const&), rmf_rxcpp::RxCppExecutor::spin()::'lambda'(auto const&)>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (librmf_fleet_adapter.so+0x5fea48)
#3 std::function<void (rxcpp::schedulers::schedulable const&)>::operator()(rxcpp::schedulers::schedulable const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x6f0090)
#4 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:712:13 (test_rmf_fleet_adapter+0x6f0090)
#5 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6efcf1)
#6 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70e790)
#7 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x70e790)
#8 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x70e790)
#9 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x70e790)
#10 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x70e790)
#11 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70dde1)
#12 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x640955)
#13 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x640955)
#14 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x640955)
#15 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x640955)
#16 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x640955)
#17 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x640955)
#18 <null> <null> (libstdc++.so.6+0xd6de3)
Thread T22 (tid=103741, running) created by main thread at:
#0 pthread_create <null> (test_rmf_fleet_adapter+0x501f5b)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xd70a8)
#2 rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)::operator()(std::function<void ()>) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:148:20 (test_rmf_fleet_adapter+0x70b228)
#3 std::_Function_handler<std::thread (std::function<void ()>), rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)>::_M_invoke(std::_Any_data const&, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (test_rmf_fleet_adapter+0x70b228)
#4 std::function<std::thread (std::function<void ()>)>::operator()(std::function<void ()>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70bd7b)
#5 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:87:29 (test_rmf_fleet_adapter+0x70bd7b)
#6 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70b710)
#7 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b380)
#8 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b380)
#9 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b380)
#10 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b380)
#11 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70add1)
#12 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70add1)
#13 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70add1)
#14 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70add1)
#15 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x6e88af)
#16 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x8aec9a)
#17 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8ae7ab)
#18 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8ae7ab)
#19 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8ae7ab)
#20 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8ae7ab)
#21 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8ae7ab)
#22 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae585)
#23 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae585)
#24 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae585)
#25 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae585)
#26 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae585)
#27 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (librmf_fleet_adapter.so+0x8728eb)
#28 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x86cba9)
#29 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x86cba9)
#30 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (test_rmf_fleet_adapter+0x63a2ac)
#31 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x5c021d)
#32 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#33 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#34 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#35 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#36 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#37 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#38 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#39 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#40 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
SUMMARY: ThreadSanitizer: data race (/home/aaron/workspaces/g_rmf/build/rmf_fleet_adapter/test_rmf_fleet_adapter+0x58f5be) in operator delete(void*)
==================
==103718==WARNING: Symbolizer buffer too small
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 8 at 0x7b040000f480 by main thread:
#0 std::_Function_base::_Base_manager<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0>::_M_destroy(std::_Any_data&, std::integral_constant<bool, false>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:191:4 (test_rmf_fleet_adapter+0x58f5be)
#1 std::_Function_base::_Base_manager<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:215:8 (test_rmf_fleet_adapter+0x58f5be)
#2 rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:973:11 (test_rmf_fleet_adapter+0x72c620)
#3 std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<std::__detail::__variant::__variant_cookie (*)(std::__detail::__variant::_Variant_storage<false, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >::_M_reset_impl()::'lambda'(false&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&)>, std::tuple<std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>, std::integer_sequence<unsigned long, 2ul> >::__do_visit_invoke(std::__detail::__variant::_Variant_storage<false, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >::_M_reset_impl()::'lambda'(false&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:981:9 (test_rmf_fleet_adapter+0x72c620)
#4 std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<std::__detail::__variant::__variant_cookie (*)(std::__detail::__variant::_Variant_storage<false, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >::_M_reset_impl()::'lambda'(false&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&)>, std::tuple<std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>, std::integer_sequence<unsigned long, 2ul> >::__visit_invoke(std::__detail::__variant::_Variant_storage<false, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >::_M_reset_impl()::'lambda'(false&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:997:11 (test_rmf_fleet_adapter+0x72c620)
#5 <null> <null> (test_rmf_fleet_adapter+0x6c7f20)
#6 decltype(auto) std::__do_visit<false, true, std::__detail::__variant::_Variant_storage<false, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >::_M_reset_impl()::'lambda'(false&&), std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>(std::__detail::__variant::_Variant_storage<false, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >::_M_reset_impl()::'lambda'(false&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:1644:14 (test_rmf_fleet_adapter+0x6cd3ca)
#7 std::__detail::__variant::_Variant_storage<false, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >::_M_reset_impl() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:385:2 (test_rmf_fleet_adapter+0x6cd3ca)
#8 std::__detail::__variant::_Variant_storage<false, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >::_M_reset() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:397:2 (test_rmf_fleet_adapter+0x6cd3ca)
#9 std::__detail::__variant::_Variant_storage<false, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >::~_Variant_storage() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:402:9 (test_rmf_fleet_adapter+0x6cd3ca)
#10 rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::~AnySubscriptionCallback() /opt/ros/galactic/include/rclcpp/any_subscription_callback.hpp:101:7 (test_rmf_fleet_adapter+0x6cd3ca)
#11 rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >::~Subscription() /opt/ros/galactic/include/rclcpp/subscription.hpp:69:7 (test_rmf_fleet_adapter+0x6cd3ca)
#12 void __gnu_cxx::new_allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >::destroy<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >(rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:153:10 (test_rmf_fleet_adapter+0x6c97d7)
#13 void std::allocator_traits<std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > > >::destroy<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >(std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >&, rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:497:8 (test_rmf_fleet_adapter+0x6c97d7)
#14 std::_Sp_counted_ptr_inplace<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:557:2 (test_rmf_fleet_adapter+0x6c97d7)
#15 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 (test_rmf_fleet_adapter+0x722550)
#16 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 (test_rmf_fleet_adapter+0x722550)
#17 std::__shared_ptr<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 (test_rmf_fleet_adapter+0x722550)
#18 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorClose.cpp:243:1 (test_rmf_fleet_adapter+0x722550)
#19 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:821:5 (test_rmf_fleet_adapter+0x7732cf)
#20 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5b4d47)
#21 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5b4d47)
#22 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b1f02)
#23 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b0984)
#24 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b9ae0)
#25 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b9ae0)
#26 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b87ce)
#27 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5d7d3a)
#28 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5d7d3a)
Previous read of size 8 at 0x7b040000f480 by thread T22:
#0 std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>::operator()(std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x72c2fd)
#1 auto rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(auto&&)::operator()<std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>&>(auto&&) const /opt/ros/galactic/include/rclcpp/any_subscription_callback.hpp:247:11 (test_rmf_fleet_adapter+0x72c2fd)
#2 rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > std::__invoke_impl<void, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&), std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>&>(std::__invoke_other, std::allocator<void>&&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&...) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x6e0e8d)
#3 std::__invoke_result<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>...>::type std::__invoke<rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&), std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>&>(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&, std::allocator<void>&&...) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x6e0e8d)
#4 std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<void (*)(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&)>, std::tuple<std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>, std::integer_sequence<unsigned long, 2ul> >::__visit_invoke_impl(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:973:11 (test_rmf_fleet_adapter+0x6e0e8d)
#5 std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<void (*)(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&)>, std::tuple<std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>, std::integer_sequence<unsigned long, 2ul> >::__do_visit_invoke(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:981:9 (test_rmf_fleet_adapter+0x6e0e8d)
#6 std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<void (*)(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&)>, std::tuple<std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>, std::integer_sequence<unsigned long, 2ul> >::__visit_invoke(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:997:11 (test_rmf_fleet_adapter+0x6e0e8d)
#7 decltype(auto) std::__do_visit<false, true, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&), std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:1644:14 (test_rmf_fleet_adapter+0x6e0bf0)
#8 decltype(auto) std::visit<rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&), std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&, std::allocator<void>&&...) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:1655:14 (test_rmf_fleet_adapter+0x6e0bf0)
#9 rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&) /opt/ros/galactic/include/rclcpp/any_subscription_callback.hpp:238:5 (test_rmf_fleet_adapter+0x6e0bf0)
#10 rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >::handle_message(std::shared_ptr<void>&, rclcpp::MessageInfo const&) /opt/ros/galactic/include/rclcpp/subscription.hpp:284:19 (test_rmf_fleet_adapter+0x6e0a20)
#11 <null> <null> (test_rmf_fleet_adapter+0x6cd641)
#12 std::_Function_handler<void (rxcpp::schedulers::schedulable const&), rmf_rxcpp::RxCppExecutor::spin()::'lambda'(auto const&)>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (librclcpp.so+0x1023a3)
#13 std::function<void (rxcpp::schedulers::schedulable const&)>::operator()(rxcpp::schedulers::schedulable const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (librmf_fleet_adapter.so+0x5fea48)
#14 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:712:13 (librmf_fleet_adapter.so+0x5fea48)
#15 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6f0090)
#16 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x6efcf1)
#17 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x6efcf1)
#18 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x6efcf1)
#19 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x6efcf1)
#20 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x6efcf1)
#21 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70e790)
#22 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70dde1)
#23 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x70dde1)
#24 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x70dde1)
#25 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x70dde1)
#26 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x70dde1)
#27 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x70dde1)
#28 <null> <null> (test_rmf_fleet_adapter+0x640955)
#29 operator delete(void*) <null> (libstdc++.so.6+0xd6de3)
Thread T22 (tid=103741, running) created by main thread at:
#0 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (test_rmf_fleet_adapter+0x501f5b)
#1 rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)::operator()(std::function<void ()>) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:148:20 (libstdc++.so.6+0xd70a8)
#2 std::_Function_handler<std::thread (std::function<void ()>), rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)>::_M_invoke(std::_Any_data const&, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (libstdc++.so.6+0xd70a8)
#3 std::function<std::thread (std::function<void ()>)>::operator()(std::function<void ()>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70b228)
#4 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:87:29 (test_rmf_fleet_adapter+0x70b228)
#5 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70bd7b)
#6 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b710)
#7 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b710)
#8 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b710)
#9 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b710)
#10 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70b380)
#11 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70b380)
#12 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70b380)
#13 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70b380)
#14 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x70add1)
#15 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x6e88af)
#16 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8aec9a)
#17 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8aec9a)
#18 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8aec9a)
#19 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8aec9a)
#20 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8aec9a)
#21 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae7ab)
#22 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae7ab)
#23 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae7ab)
#24 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae7ab)
#25 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae7ab)
#26 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (test_rmf_fleet_adapter+0x8ae585)
#27 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x8728eb)
#28 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x8728eb)
#29 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (librmf_fleet_adapter.so+0x86cba9)
#30 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x63a2ac)
#31 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5c021d)
#32 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5c021d)
#33 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b4d47)
#34 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b1f02)
#35 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b0984)
#36 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b0984)
#37 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b9ae0)
#38 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5b87ce)
#39 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5b87ce)
#40 __libc_start_main /build/glibc-YbNSs7/glibc-2.31/csu/../csu/libc-start.c:308:16 (test_rmf_fleet_adapter+0x5d7d3a)
#41 std::__shared_ptr<rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData, (__gnu_cxx::_Lock_policy)2>::get() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1310:16 (libc.so.6+0x270b2)
#42 std::__shared_ptr_access<rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData, (__gnu_cxx::_Lock_policy)2, false, false>::_M_get() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1021:66 (libc.so.6+0x270b2)
#43 std::__shared_ptr_access<rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1015:9 (libc.so.6+0x270b2)
#44 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0::operator()(std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorClose.cpp:64:39 (libc.so.6+0x270b2)
#45 std::_Function_handler<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >), rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0>::_M_invoke(std::_Any_data const&, std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (libc.so.6+0x270b2)
SUMMARY: ThreadSanitizer: data race /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:191:4 in std::_Function_base::_Base_manager<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0>::_M_destroy(std::_Any_data&, std::integral_constant<bool, false>)
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Write of size 1 at 0x7b58000a2a10 by main thread:
#0 void __gnu_cxx::new_allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >::destroy<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >(rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:153:10 (test_rmf_fleet_adapter+0x6cd3d2)
#1 void std::allocator_traits<std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > > >::destroy<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >(std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >&, rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:497:8 (test_rmf_fleet_adapter+0x6cd3d2)
#2 std::_Sp_counted_ptr_inplace<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:557:2 (test_rmf_fleet_adapter+0x6cd3d2)
#3 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 (test_rmf_fleet_adapter+0x6c97d7)
#4 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 (test_rmf_fleet_adapter+0x6c97d7)
#5 std::__shared_ptr<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 (test_rmf_fleet_adapter+0x6c97d7)
#6 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorClose.cpp:243:1 (test_rmf_fleet_adapter+0x6c97d7)
#7 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:821:5 (test_rmf_fleet_adapter+0x722550)
#8 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x7732cf)
#9 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x7732cf)
#10 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b4d47)
#11 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b1f02)
#12 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b0984)
#13 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b0984)
#14 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b9ae0)
#15 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5b87ce)
#16 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5b87ce)
#17 __libc_start_main /build/glibc-YbNSs7/glibc-2.31/csu/../csu/libc-start.c:308:16 (test_rmf_fleet_adapter+0x5d7d3a)
#18 pthread_create <null> (libc.so.6+0x270b2)
Previous read of size 1 at 0x7b58000a2a10 by thread T22:
#0 rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >::handle_message(std::shared_ptr<void>&, rclcpp::MessageInfo const&) /opt/ros/galactic/include/rclcpp/subscription.hpp:284:19 (test_rmf_fleet_adapter+0x6e09d4)
#1 <null> <null> (test_rmf_fleet_adapter+0x6cd641)
#2 std::_Function_handler<void (rxcpp::schedulers::schedulable const&), rmf_rxcpp::RxCppExecutor::spin()::'lambda'(auto const&)>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (librclcpp.so+0x1023a3)
#3 std::function<void (rxcpp::schedulers::schedulable const&)>::operator()(rxcpp::schedulers::schedulable const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (librmf_fleet_adapter.so+0x5fea48)
#4 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:712:13 (librmf_fleet_adapter.so+0x5fea48)
#5 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6f0090)
#6 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x6efcf1)
#7 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x6efcf1)
#8 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x6efcf1)
#9 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x6efcf1)
#10 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x6efcf1)
#11 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70e790)
#12 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70dde1)
#13 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x70dde1)
#14 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x70dde1)
#15 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x70dde1)
#16 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x70dde1)
#17 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x70dde1)
#18 <null> <null> (test_rmf_fleet_adapter+0x640955)
#19 std::__detail::__variant::_Variant_storage<false, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >::_M_reset() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:398:11 (libstdc++.so.6+0xd6de3)
#20 std::__detail::__variant::_Variant_storage<false, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >::~_Variant_storage() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:402:9 (libstdc++.so.6+0xd6de3)
#21 rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::~AnySubscriptionCallback() /opt/ros/galactic/include/rclcpp/any_subscription_callback.hpp:101:7 (libstdc++.so.6+0xd6de3)
#22 rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >::~Subscription() /opt/ros/galactic/include/rclcpp/subscription.hpp:69:7 (libstdc++.so.6+0xd6de3)
Location is heap block of size 664 at 0x7b58000a2900 allocated by main thread:
#0 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (test_rmf_fleet_adapter+0x58ee6b)
#1 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (test_rmf_fleet_adapter+0x58ee6b)
#2 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/allocated_ptr.h:97:21 (test_rmf_fleet_adapter+0x58ee6b)
#3 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, rclcpp::node_interfaces::NodeBaseInterface*&, rosidl_message_type_support_t const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > const&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, std::shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > const&, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > const&>(rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >*&, std::_Sp_alloc_shared_tag<std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > > >, rclcpp::node_interfaces::NodeBaseInterface*&, rosidl_message_type_support_t const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > const&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, std::shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > const&, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:677:19 (test_rmf_fleet_adapter+0x58ee6b)
#4 std::__shared_ptr<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, rclcpp::node_interfaces::NodeBaseInterface*&, rosidl_message_type_support_t const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > const&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, std::shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > const&, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > const&>(std::_Sp_alloc_shared_tag<std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > > >, rclcpp::node_interfaces::NodeBaseInterface*&, rosidl_message_type_support_t const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > const&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, std::shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > const&, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x58ee6b)
#5 std::shared_ptr<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >::shared_ptr<std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, rclcpp::node_interfaces::NodeBaseInterface*&, rosidl_message_type_support_t const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > const&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, std::shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > const&, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > const&>(std::_Sp_alloc_shared_tag<std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > > >, rclcpp::node_interfaces::NodeBaseInterface*&, rosidl_message_type_support_t const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > const&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, std::shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > const&, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x6c95b4)
#6 std::shared_ptr<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > > std::allocate_shared<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >, rclcpp::node_interfaces::NodeBaseInterface*&, rosidl_message_type_support_t const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > const&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, std::shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > const&, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > const&>(std::allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > > const&, rclcpp::node_interfaces::NodeBaseInterface*&, rosidl_message_type_support_t const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > const&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, std::shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > const&, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x6c95b4)
#7 std::shared_ptr<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > > std::make_shared<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, rclcpp::node_interfaces::NodeBaseInterface*&, rosidl_message_type_support_t const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > const&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, std::shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > const&, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > const&>(rclcpp::node_interfaces::NodeBaseInterface*&, rosidl_message_type_support_t const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > const&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, std::shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > const&, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x6c95b4)
#8 std::shared_ptr<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > > rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >::make_shared<rclcpp::node_interfaces::NodeBaseInterface*&, rosidl_message_type_support_t const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > const&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, std::shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > const&, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > const&>(rclcpp::node_interfaces::NodeBaseInterface*&, rosidl_message_type_support_t const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > const&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, std::shared_ptr<rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > const&, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > const&) /opt/ros/galactic/include/rclcpp/subscription.hpp:82:3 (test_rmf_fleet_adapter+0x6c95b4)
#9 rclcpp::SubscriptionFactory rclcpp::create_subscription_factory<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0, std::allocator<void>, rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >(rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0&&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::SharedPtr, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)::'lambda'(rclcpp::node_interfaces::NodeBaseInterface*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&)::operator()(rclcpp::node_interfaces::NodeBaseInterface*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&) const /opt/ros/galactic/include/rclcpp/subscription_factory.hpp:110:18 (test_rmf_fleet_adapter+0x6c95b4)
#10 std::_Function_handler<std::shared_ptr<rclcpp::SubscriptionBase> (rclcpp::node_interfaces::NodeBaseInterface*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&), rclcpp::SubscriptionFactory rclcpp::create_subscription_factory<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0, std::allocator<void>, rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >(rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0&&, rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::SharedPtr, std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)::'lambda'(rclcpp::node_interfaces::NodeBaseInterface*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&)>::_M_invoke(std::_Any_data const&, rclcpp::node_interfaces::NodeBaseInterface*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (test_rmf_fleet_adapter+0x6c95b4)
#11 rclcpp::node_interfaces::NodeTopics::create_subscription(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::SubscriptionFactory const&, rclcpp::QoS const&) <null> (test_rmf_fleet_adapter+0x72c6cd)
#12 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:821:5 (librclcpp.so+0x154a0a)
#13 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x7732cf)
#14 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x7732cf)
#15 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b4d47)
#16 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b1f02)
#17 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b0984)
#18 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b0984)
#19 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b9ae0)
#20 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5b87ce)
#21 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5b87ce)
#22 __libc_start_main /build/glibc-YbNSs7/glibc-2.31/csu/../csu/libc-start.c:308:16 (test_rmf_fleet_adapter+0x5d7d3a)
#23 pthread_create <null> (libc.so.6+0x270b2)
Thread T22 (tid=103741, running) created by main thread at:
#0 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (test_rmf_fleet_adapter+0x501f5b)
#1 rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)::operator()(std::function<void ()>) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:148:20 (libstdc++.so.6+0xd70a8)
#2 std::_Function_handler<std::thread (std::function<void ()>), rxcpp::schedulers::new_thread::new_thread()::'lambda'(std::function<void ()>)>::_M_invoke(std::_Any_data const&, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 (libstdc++.so.6+0xd70a8)
#3 std::function<std::thread (std::function<void ()>)>::operator()(std::function<void ()>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70b228)
#4 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:87:29 (test_rmf_fleet_adapter+0x70b228)
#5 void __gnu_cxx::new_allocator<rxcpp::schedulers::new_thread::new_worker>::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x70bd7b)
#6 void std::allocator_traits<std::allocator<rxcpp::schedulers::new_thread::new_worker> >::construct<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>&, rxcpp::schedulers::new_thread::new_worker*, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x70b710)
#7 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x70b710)
#8 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::schedulers::new_thread::new_worker*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x70b710)
#9 std::__shared_ptr<rxcpp::schedulers::new_thread::new_worker, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x70b710)
#10 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker>::shared_ptr<std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::new_thread::new_worker> >, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x70b380)
#11 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::allocate_shared<rxcpp::schedulers::new_thread::new_worker, std::allocator<rxcpp::schedulers::new_thread::new_worker>, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(std::allocator<rxcpp::schedulers::new_thread::new_worker> const&, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x70b380)
#12 std::shared_ptr<rxcpp::schedulers::new_thread::new_worker> std::make_shared<rxcpp::schedulers::new_thread::new_worker, rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&>(rxcpp::composite_subscription&, std::function<std::thread (std::function<void ()>)>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x70b380)
#13 rxcpp::schedulers::new_thread::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:165:27 (test_rmf_fleet_adapter+0x70b380)
#14 rxcpp::schedulers::scheduler::create_worker(rxcpp::composite_subscription) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:413:23 (test_rmf_fleet_adapter+0x70add1)
#15 rxcpp::schedulers::event_loop::event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:79:39 (test_rmf_fleet_adapter+0x6e88af)
#16 void __gnu_cxx::new_allocator<rxcpp::schedulers::event_loop>::construct<rxcpp::schedulers::event_loop>(rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:147:23 (test_rmf_fleet_adapter+0x8aec9a)
#17 void std::allocator_traits<std::allocator<rxcpp::schedulers::event_loop> >::construct<rxcpp::schedulers::event_loop>(std::allocator<rxcpp::schedulers::event_loop>&, rxcpp::schedulers::event_loop*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:484:8 (test_rmf_fleet_adapter+0x8aec9a)
#18 std::_Sp_counted_ptr_inplace<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<rxcpp::schedulers::event_loop>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:548:4 (test_rmf_fleet_adapter+0x8aec9a)
#19 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(rxcpp::schedulers::event_loop*&, std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:680:6 (test_rmf_fleet_adapter+0x8aec9a)
#20 std::__shared_ptr<rxcpp::schedulers::event_loop, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1344:14 (test_rmf_fleet_adapter+0x8aec9a)
#21 std::shared_ptr<rxcpp::schedulers::event_loop>::shared_ptr<std::allocator<rxcpp::schedulers::event_loop> >(std::_Sp_alloc_shared_tag<std::allocator<rxcpp::schedulers::event_loop> >) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:359:4 (test_rmf_fleet_adapter+0x8ae7ab)
#22 std::shared_ptr<rxcpp::schedulers::event_loop> std::allocate_shared<rxcpp::schedulers::event_loop, std::allocator<rxcpp::schedulers::event_loop> >(std::allocator<rxcpp::schedulers::event_loop> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:701:14 (test_rmf_fleet_adapter+0x8ae7ab)
#23 std::shared_ptr<rxcpp::schedulers::event_loop> std::make_shared<rxcpp::schedulers::event_loop>() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:717:14 (test_rmf_fleet_adapter+0x8ae7ab)
#24 rxcpp::schedulers::scheduler rxcpp::schedulers::make_scheduler<rxcpp::schedulers::event_loop>() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:419:68 (test_rmf_fleet_adapter+0x8ae7ab)
#25 rxcpp::schedulers::make_event_loop() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-eventloop.hpp:107:33 (test_rmf_fleet_adapter+0x8ae7ab)
#26 rmf_fleet_adapter::agv::test::MockAdapter::Implementation::Implementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:205:12 (test_rmf_fleet_adapter+0x8ae585)
#27 rmf_utils::unique_impl_ptr<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, void (*)(rmf_fleet_adapter::agv::test::MockAdapter::Implementation*)> rmf_utils::make_unique_impl<rmf_fleet_adapter::agv::test::MockAdapter::Implementation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/impl_ptr.hpp:325:33 (librmf_fleet_adapter.so+0x8728eb)
#28 rmf_fleet_adapter::agv::test::MockAdapter::MockAdapter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/test/MockAdapter.cpp:221:10 (librmf_fleet_adapter.so+0x8728eb)
#29 ____C_A_T_C_H____T_E_S_T____0() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/adapters/test_TrafficLight.cpp:200:45 (librmf_fleet_adapter.so+0x86cba9)
#30 Catch::TestInvokerAsFunction::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13230:3 (test_rmf_fleet_adapter+0x63a2ac)
#31 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x5c021d)
#32 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x5c021d)
#33 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b4d47)
#34 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b1f02)
#35 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b0984)
#36 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b0984)
#37 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b9ae0)
#38 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5b87ce)
#39 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5b87ce)
#40 __libc_start_main /build/glibc-YbNSs7/glibc-2.31/csu/../csu/libc-start.c:308:16 (test_rmf_fleet_adapter+0x5d7d3a)
#41 std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >::index() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:1497:12 (libc.so.6+0x270b2)
#42 rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&) /opt/ros/galactic/include/rclcpp/any_subscription_callback.hpp:231:27 (libc.so.6+0x270b2)
SUMMARY: ThreadSanitizer: data race /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:153:10 in void __gnu_cxx::new_allocator<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >::destroy<rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > > >(rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >*)
==================
==================
WARNING: ThreadSanitizer: data race (pid=103718)
Read of size 8 at 0x7b0800023660 by main thread:
#0 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 (test_rmf_fleet_adapter+0x72bbaf)
#1 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 (test_rmf_fleet_adapter+0x72bbaf)
#2 std::__shared_ptr<rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 (test_rmf_fleet_adapter+0x72bbaf)
#3 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorClose.cpp:243:1 (test_rmf_fleet_adapter+0x72bbaf)
#4 Catch::TestInvokerAsMethod<rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0>::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:821:5 (test_rmf_fleet_adapter+0x722605)
#5 Catch::TestCase::invoke() const /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:13103:9 (test_rmf_fleet_adapter+0x7732cf)
#6 Catch::RunContext::invokeActiveTestCase() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11760:21 (test_rmf_fleet_adapter+0x7732cf)
#7 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11730:7 (test_rmf_fleet_adapter+0x5b4d47)
#8 Catch::RunContext::runTest(Catch::TestCase const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11462:5 (test_rmf_fleet_adapter+0x5b1f02)
#9 Catch::(anonymous namespace)::runTests(std::shared_ptr<Catch::Config> const&) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12088:25 (test_rmf_fleet_adapter+0x5b0984)
#10 Catch::Session::runInternal() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12324:19 (test_rmf_fleet_adapter+0x5b0984)
#11 Catch::Session::run() /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:12272:18 (test_rmf_fleet_adapter+0x5b9ae0)
#12 int Catch::Session::run<char>(int, char const* const*) /home/aaron/workspaces/g_rmf/install/rmf_utils/include/rmf_utils/catch.hpp:11980:20 (test_rmf_fleet_adapter+0x5b87ce)
#13 main /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/main.cpp:33:39 (test_rmf_fleet_adapter+0x5b87ce)
#14 __libc_start_main /build/glibc-YbNSs7/glibc-2.31/csu/../csu/libc-start.c:308:16 (test_rmf_fleet_adapter+0x5d7d3a)
#15 operator new(unsigned long) <null> (libc.so.6+0x270b2)
Previous write of size 8 at 0x7b0800023660 by thread T22 (mutexes: write M53052758890120640):
#0 __gnu_cxx::new_allocator<std::_List_node<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (test_rmf_fleet_adapter+0x58ee6b)
#1 std::allocator_traits<std::allocator<std::_List_node<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > > >::allocate(std::allocator<std::_List_node<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (test_rmf_fleet_adapter+0x58ee6b)
#2 std::__cxx11::_List_base<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, std::allocator<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >::_M_get_node() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_list.h:438:16 (test_rmf_fleet_adapter+0x58ee6b)
#3 std::_List_node<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > >* std::__cxx11::list<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, std::allocator<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >::_M_create_node<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > >(std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_list.h:630:21 (test_rmf_fleet_adapter+0x58ee6b)
#4 void std::__cxx11::list<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, std::allocator<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >::_M_insert<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > >(std::_List_iterator<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > >, std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_list.h:1907:18 (test_rmf_fleet_adapter+0x58ee6b)
#5 std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >& std::__cxx11::list<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, std::allocator<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >::emplace_back<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > >(std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_list.h:1223:10 (test_rmf_fleet_adapter+0x58ee6b)
#6 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0::operator()(std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorClose.cpp:65:31 (test_rmf_fleet_adapter+0x58ee6b)
#7 std::_Function_handler<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >), rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0>::_M_invoke(std::_Any_data const&, std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x58ee6b)
#8 std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>::operator()(std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x72c334)
#9 auto rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(auto&&)::operator()<std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>&>(auto&&) const /opt/ros/galactic/include/rclcpp/any_subscription_callback.hpp:247:11 (test_rmf_fleet_adapter+0x72c334)
#10 rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > std::__invoke_impl<void, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&), std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>&>(std::__invoke_other, std::allocator<void>&&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&...) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x6e0e8d)
#11 std::__invoke_result<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>...>::type std::__invoke<rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&), std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>&>(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&, std::allocator<void>&&...) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x6e0e8d)
#12 std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<void (*)(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&)>, std::tuple<std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>, std::integer_sequence<unsigned long, 2ul> >::__visit_invoke_impl(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:973:11 (test_rmf_fleet_adapter+0x6e0e8d)
#13 std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<void (*)(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&)>, std::tuple<std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>, std::integer_sequence<unsigned long, 2ul> >::__do_visit_invoke(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:981:9 (test_rmf_fleet_adapter+0x6e0e8d)
#14 std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<void (*)(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&)>, std::tuple<std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>, std::integer_sequence<unsigned long, 2ul> >::__visit_invoke(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:997:11 (test_rmf_fleet_adapter+0x6e0e8d)
#15 decltype(auto) std::__do_visit<false, true, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&), std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:1644:14 (test_rmf_fleet_adapter+0x6e0bf0)
#16 decltype(auto) std::visit<rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&), std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&, std::allocator<void>&&...) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:1655:14 (test_rmf_fleet_adapter+0x6e0bf0)
#17 rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&) /opt/ros/galactic/include/rclcpp/any_subscription_callback.hpp:238:5 (test_rmf_fleet_adapter+0x6e0bf0)
#18 rclcpp::Subscription<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>, rclcpp::message_memory_strategy::MessageMemoryStrategy<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> > >::handle_message(std::shared_ptr<void>&, rclcpp::MessageInfo const&) /opt/ros/galactic/include/rclcpp/subscription.hpp:284:19 (test_rmf_fleet_adapter+0x6e0a20)
#19 <null> <null> (test_rmf_fleet_adapter+0x6cd641)
#20 std::_Function_handler<void (rxcpp::schedulers::schedulable const&), rmf_rxcpp::RxCppExecutor::spin()::'lambda'(auto const&)>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (librclcpp.so+0x1023a3)
#21 std::function<void (rxcpp::schedulers::schedulable const&)>::operator()(rxcpp::schedulers::schedulable const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (librmf_fleet_adapter.so+0x5fea48)
#22 rxcpp::schedulers::detail::action_tailrecurser::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:712:13 (librmf_fleet_adapter.so+0x5fea48)
#23 std::_Function_handler<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&), rxcpp::schedulers::detail::action_tailrecurser>::_M_invoke(std::_Any_data const&, rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x6f0090)
#24 std::function<void (rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&)>::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x6efcf1)
#25 rxcpp::schedulers::detail::action_type::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:679:9 (test_rmf_fleet_adapter+0x6efcf1)
#26 rxcpp::schedulers::action::operator()(rxcpp::schedulers::schedulable const&, rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:727:5 (test_rmf_fleet_adapter+0x6efcf1)
#27 rxcpp::schedulers::schedulable::operator()(rxcpp::schedulers::recurse const&) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/rx-scheduler.hpp:645:9 (test_rmf_fleet_adapter+0x6efcf1)
#28 rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()::operator()() const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/rmf_rxcpp/RxCpp-4.1.0/Rx/v2/src/rxcpp/schedulers/rx-newthread.hpp:120:21 (test_rmf_fleet_adapter+0x6efcf1)
#29 std::_Function_handler<void (), rxcpp::schedulers::new_thread::new_worker::new_worker(rxcpp::composite_subscription, std::function<std::thread (std::function<void ()>)>&)::'lambda0'()>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x70e790)
#30 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x70dde1)
#31 void std::__invoke_impl<void, std::function<void ()> >(std::__invoke_other, std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x70dde1)
#32 std::__invoke_result<std::function<void ()> >::type std::__invoke<std::function<void ()> >(std::function<void ()>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x70dde1)
#33 void std::thread::_Invoker<std::tuple<std::function<void ()> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:244:13 (test_rmf_fleet_adapter+0x70dde1)
#34 std::thread::_Invoker<std::tuple<std::function<void ()> > >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:251:11 (test_rmf_fleet_adapter+0x70dde1)
#35 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void ()> > > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/thread:195:13 (test_rmf_fleet_adapter+0x70dde1)
#36 <null> <null> (test_rmf_fleet_adapter+0x640955)
#37 std::__cxx11::_List_base<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, std::allocator<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >::_M_clear() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/list.tcc:74:19 (libstdc++.so.6+0xd6de3)
#38 std::__cxx11::_List_base<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, std::allocator<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >::~_List_base() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_list.h:495:9 (libstdc++.so.6+0xd6de3)
#39 rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData::~TestData() /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorClose.cpp:36:8 (libstdc++.so.6+0xd6de3)
#40 void __gnu_cxx::new_allocator<rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData>::destroy<rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData>(rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:153:10 (libstdc++.so.6+0xd6de3)
#41 void std::allocator_traits<std::allocator<rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData> >::destroy<rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData>(std::allocator<rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData>&, rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:497:8 (libstdc++.so.6+0xd6de3)
#42 std::_Sp_counted_ptr_inplace<rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData, std::allocator<rmf_fleet_adapter::phases::test::(anonymous namespace)::TestData>, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:557:2 (libstdc++.so.6+0xd6de3)
Location is heap block of size 24 at 0x7b0800023660 allocated by thread T22:
#0 __gnu_cxx::new_allocator<std::_List_node<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:114:27 (test_rmf_fleet_adapter+0x58ee6b)
#1 std::allocator_traits<std::allocator<std::_List_node<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > > >::allocate(std::allocator<std::_List_node<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:444:20 (test_rmf_fleet_adapter+0x58ee6b)
#2 std::__cxx11::_List_base<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, std::allocator<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >::_M_get_node() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_list.h:438:16 (test_rmf_fleet_adapter+0x58ee6b)
#3 std::_List_node<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > >* std::__cxx11::list<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, std::allocator<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >::_M_create_node<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > >(std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_list.h:630:21 (test_rmf_fleet_adapter+0x58ee6b)
#4 void std::__cxx11::list<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, std::allocator<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >::_M_insert<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > >(std::_List_iterator<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > >, std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_list.h:1907:18 (test_rmf_fleet_adapter+0x58ee6b)
#5 std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >& std::__cxx11::list<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, std::allocator<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > > >::emplace_back<std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > > >(std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_list.h:1223:10 (test_rmf_fleet_adapter+0x58ee6b)
#6 rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0::operator()(std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >) const /home/aaron/workspaces/g_rmf/src/rmf/rmf_ros2/rmf_fleet_adapter/test/phases/test_DoorClose.cpp:65:31 (test_rmf_fleet_adapter+0x58ee6b)
#7 std::_Function_handler<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >), rmf_fleet_adapter::phases::test::(anonymous namespace)::____C_A_T_C_H____T_E_S_T____0::test()::$_0>::_M_invoke(std::_Any_data const&, std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2 (test_rmf_fleet_adapter+0x58ee6b)
#8 std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>::operator()(std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 (test_rmf_fleet_adapter+0x72c334)
#9 auto rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(auto&&)::operator()<std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>&>(auto&&) const /opt/ros/galactic/include/rclcpp/any_subscription_callback.hpp:247:11 (test_rmf_fleet_adapter+0x72c334)
#10 rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > std::__invoke_impl<void, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&), std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>&>(std::__invoke_other, std::allocator<void>&&, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&...) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 (test_rmf_fleet_adapter+0x6e0e8d)
#11 std::__invoke_result<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void>...>::type std::__invoke<rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&), std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>&>(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&, std::allocator<void>&&...) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 (test_rmf_fleet_adapter+0x6e0e8d)
#12 std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<void (*)(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&)>, std::tuple<std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>, std::integer_sequence<unsigned long, 2ul> >::__visit_invoke_impl(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:973:11 (test_rmf_fleet_adapter+0x6e0e8d)
#13 std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<void (*)(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&)>, std::tuple<std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>, std::integer_sequence<unsigned long, 2ul> >::__do_visit_invoke(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:981:9 (test_rmf_fleet_adapter+0x6e0e8d)
#14 std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<void (*)(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&)>, std::tuple<std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>, std::integer_sequence<unsigned long, 2ul> >::__visit_invoke(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:997:11 (test_rmf_fleet_adapter+0x6e0e8d)
#15 decltype(auto) std::__do_visit<false, true, rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&), std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)> >&>(rclcpp::AnySubscriptionCallback<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::allocator<void> >::dispatch(std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageInfo const&)::'lambda'(rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >&&)&&, std::variant<std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&)>, std::function<void (rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const&, rclcpp::MessageInfo const&)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >)>, std::function<void (std::unique_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> >, std::default_delete<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > > >, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const>, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > const> const&, rclcpp::MessageInfo const&)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >)>, std::function<void (std::shared_ptr<rmf_door_msgs::msg::DoorRequest_<std::allocator<void> > >, rclcpp::MessageI
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment