Skip to content

CM is calling update of a controller after cleanup #2975

@christophfroehlich

Description

@christophfroehlich

Describe the bug
How can that happen?

2026-01-21T03:32:25.3778768Z     [ros2_control_node-1] [INFO] [1768966270.605792714] [controller_manager]: Shutdown request received....
2026-01-21T03:32:25.3779985Z     [ros2_control_node-1] [INFO] [1768966270.605864869] [controller_manager]: Shutting down all controllers in the controller manager.
2026-01-21T03:32:25.3781262Z     [ros2_control_node-1] [INFO] [1768966270.605915321] [controller_manager]: Deactivating controller 'rrbot_with_sensor_position_controller'
2026-01-21T03:32:25.3782460Z     [ros2_control_node-1] [INFO] [1768966270.605978392] [controller_manager]: Shutting down controller 'rrbot_with_sensor_position_controller'
2026-01-21T03:32:25.3783632Z     [ros2_control_node-1] [INFO] [1768966270.606012694] [controller_manager]: Deactivating controller 'threedofbot_joint_state_broadcaster'
2026-01-21T03:32:25.3784872Z     [ros2_control_node-1] [INFO] [1768966270.606047241] [controller_manager]: Shutting down controller 'threedofbot_joint_state_broadcaster'
2026-01-21T03:32:25.3785725Z     [ros2_control_node-1] [INFO] [1768966270.606066098] [controller_manager]: Deactivating controller 'threedofbot_position_controller'
2026-01-21T03:32:25.3786469Z     [ros2_control_node-1] [INFO] [1768966270.606092795] [controller_manager]: Shutting down controller 'threedofbot_position_controller'
2026-01-21T03:32:25.3787199Z     [ros2_control_node-1] [INFO] [1768966270.606111174] [controller_manager]: Deactivating controller 'threedofbot_pid_gain_controller'
2026-01-21T03:32:25.3787966Z     [ros2_control_node-1] [INFO] [1768966270.606133770] [controller_manager]: Shutting down controller 'threedofbot_pid_gain_controller'
2026-01-21T03:32:25.3788894Z     [ros2_control_node-1] [INFO] [1768966270.606151592] [controller_manager]: Deactivating controller 'joint_state_broadcaster'
2026-01-21T03:32:25.3789577Z     [ros2_control_node-1] [INFO] [1768966270.606177328] [controller_manager]: Shutting down controller 'joint_state_broadcaster'
2026-01-21T03:32:25.3790277Z     [ros2_control_node-1] [INFO] [1768966270.606193478] [controller_manager]: Shutting down controller 'rrbot_joint_state_broadcaster'
2026-01-21T03:32:25.3790988Z     [ros2_control_node-1] [INFO] [1768966270.606215154] [controller_manager]: Shutting down controller 'rrbot_position_controller'
2026-01-21T03:32:25.3791709Z     [ros2_control_node-1] [INFO] [1768966270.606233607] [controller_manager]: Deactivating controller 'rrbot_external_fts_broadcaster'
2026-01-21T03:32:25.3792421Z     [ros2_control_node-1] [INFO] [1768966270.606276777] [controller_manager]: Shutting down controller 'rrbot_external_fts_broadcaster'
2026-01-21T03:32:25.3793178Z     [ros2_control_node-1] [INFO] [1768966270.606293918] [controller_manager]: Deactivating controller 'rrbot_with_sensor_joint_state_broadcaster'
2026-01-21T03:32:25.3793975Z     [ros2_control_node-1] [INFO] [1768966270.606315254] [controller_manager]: Shutting down controller 'rrbot_with_sensor_joint_state_broadcaster'
2026-01-21T03:32:25.3794741Z     [ros2_control_node-1] [INFO] [1768966270.606330257] [controller_manager]: Deactivating controller 'rrbot_with_sensor_fts_broadcaster'
2026-01-21T03:32:25.3795478Z     [ros2_control_node-1] [INFO] [1768966270.606346233] [controller_manager]: Shutting down controller 'rrbot_with_sensor_fts_broadcaster'
2026-01-21T03:32:25.3796165Z     [ros2_control_node-1] [INFO] [1768966270.606417420] [resource_manager]: 'deactivate' hardware 'FakeThreeDofBot' 
2026-01-21T03:32:25.3796901Z     [ros2_control_node-1] [INFO] [1768966270.606432924] [resource_manager]: Successful 'deactivate' of hardware 'FakeThreeDofBot'
2026-01-21T03:32:25.3797539Z     [ros2_control_node-1] [INFO] [1768966270.606439827] [resource_manager]: 'shutdown' hardware 'FakeThreeDofBot' 
2026-01-21T03:32:25.3798347Z     [ros2_control_node-1] [INFO] [1768966270.606445357] [resource_manager]: Successful 'shutdown' of hardware 'FakeThreeDofBot'
2026-01-21T03:32:25.3799167Z     [ros2_control_node-1] [INFO] [1768966270.606455997] [resource_manager]: 'deactivate' hardware 'RRBotSystemWithSensor' 
2026-01-21T03:32:25.3800019Z     [ros2_control_node-1] [INFO] [1768966270.606462240] [controller_manager.resource_manager.hardware_component.system.RRBotSystemWithSensor]: Deactivating ...please wait...
2026-01-21T03:32:25.3800798Z     [ros2_control_node-1] Stack trace (most recent call last) in thread 38299:
2026-01-21T03:32:25.3801315Z     [ros2_control_node-1] #17   Object "/usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2", at 0xffffffffffffffff, in 
2026-01-21T03:32:25.3801908Z     [ros2_control_node-1] #16   Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x7f0c05ed9a73, in __clone
2026-01-21T03:32:25.3802430Z     [ros2_control_node-1] #15   Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x7f0c05e48ac2, in 
2026-01-21T03:32:25.3802961Z     [ros2_control_node-1] #14   Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30", at 0x7f0c060b9252, in 
2026-01-21T03:32:25.3804122Z     [ros2_control_node-1] #13   Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node", at 0x55ef749b7c95, in std::thread::_State_impl<std::thread::_Invoker<std::tuple<main::{lambda()#1}> > >::_M_run()
2026-01-21T03:32:25.3806178Z     [ros2_control_node-1] #12   Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node", at 0x55ef749b7cb1, in std::thread::_Invoker<std::tuple<main::{lambda()#1}> >::operator()()
2026-01-21T03:32:25.3808981Z     [ros2_control_node-1] #11   Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node", at 0x55ef749b7cdd, in void std::thread::_Invoker<std::tuple<main::{lambda()#1}> >::_M_invoke<0ul>(std::_Index_tuple<0ul>)
2026-01-21T03:32:25.3811875Z     [ros2_control_node-1] #10   Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node", at 0x55ef749b7d30, in std::__invoke_result<main::{lambda()#1}>::type std::__invoke<main::{lambda()#1}>(main::{lambda()#1}&&)
2026-01-21T03:32:25.3814668Z     [ros2_control_node-1] #9    Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node", at 0x55ef749b7d6d, in void std::__invoke_impl<void, main::{lambda()#1}>(std::__invoke_other, main::{lambda()#1}&&)
2026-01-21T03:32:25.3817259Z     [ros2_control_node-1] #8    Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node", at 0x55ef749b6772, in main::{lambda()#1}::operator()() const
2026-01-21T03:32:25.3819934Z     [ros2_control_node-1] #7    Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/libcontroller_manager.so", at 0x7f0c06a95374, in controller_manager::ControllerManager::update(rclcpp::Time const&, rclcpp::Duration const&)
2026-01-21T03:32:25.3822007Z     [ros2_control_node-1] #6    Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/joint_state_broadcaster/lib/libjoint_state_broadcaster.so", at 0x7f0bf8376b03, in joint_state_broadcaster::JointStateBroadcaster::update(rclcpp::Time const&, rclcpp::Duration const&)
2026-01-21T03:32:25.3826926Z     [ros2_control_node-1] #5    Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/joint_state_broadcaster/lib/libjoint_state_broadcaster.so", at 0x7f0bf8386408, in std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > > >::operator[](std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
2026-01-21T03:32:25.3836525Z     [ros2_control_node-1] #4    Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/joint_state_broadcaster/lib/libjoint_state_broadcaster.so", at 0x7f0bf838aa03, in std::__detail::_Map_base<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
2026-01-21T03:32:25.3846602Z     [ros2_control_node-1] #3    Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/joint_state_broadcaster/lib/libjoint_state_broadcaster.so", at 0x7f0bf8390149, in std::_Hashtable<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_node(unsigned long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long) const
2026-01-21T03:32:25.3856766Z     [ros2_control_node-1] #2    Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/joint_state_broadcaster/lib/libjoint_state_broadcaster.so", at 0x7f0bf83957a1, in std::_Hashtable<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long) const
2026-01-21T03:32:25.3875608Z     [ros2_control_node-1] #1    Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/joint_state_broadcaster/lib/libjoint_state_broadcaster.so", at 0x7f0bf839a0c4, in std::_Hashtable<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_bucket_index(std::__detail::_Hash_node_value<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > >, true> const&) const
2026-01-21T03:32:25.3896625Z     [ros2_control_node-1] #0    Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/joint_state_broadcaster/lib/libjoint_state_broadcaster.so", at 0x7f0bf839d7ab, in std::__detail::_Hash_code_base<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > >, std::__detail::_Select1st, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, true>::_M_bucket_index(std::__detail::_Hash_node_value<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > >, true> const&, unsigned long) const
2026-01-21T03:32:25.3904414Z     [ros2_control_node-1] Segmentation fault (Address not mapped to object [0x7f0c2cbde294])
2026-01-21T03:32:25.3904917Z     [INFO] [robot_state_publisher-2]: process has finished cleanly [pid 38261]
2026-01-21T03:32:25.3905539Z     [INFO] [publisher_forward_position_controller-8]: process has finished cleanly [pid 38295]
2026-01-21T03:32:25.3906351Z     [INFO] [publisher_forward_position_controller-9]: process has finished cleanly [pid 38297]
2026-01-21T03:32:25.3907149Z     [INFO] [publisher_forward_position_controller-7]: process has finished cleanly [pid 38293]
2026-01-21T03:32:25.3908960Z     [ERROR] [ros2_control_node-1]: process has died [pid 38259, exit code -11, cmd '/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node --ros-args --params-file /home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/ros2_control_demo_example_13/share/ros2_control_demo_example_13/config/three_robots_controllers.yaml -r ~/robot_description:=/robot_description'].

To Reproduce
humble, ros2_control_demo_example_13
ros-controls/ros2_control_ci#605 (comment)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions