ros2_controllers
ros2_controllers copied to clipboard
JTC segfaults during deactivation
Describe the bug
2025-11-26T03:14:57.5352428Z [robot_state_publisher-1] [INFO] [1764126579.315956237] [rclcpp]: signal_handler(signum=2)
2025-11-26T03:14:57.5353157Z [INFO] [python3-6]: process has finished cleanly [pid 52360]
2025-11-26T03:14:57.5353820Z [ros2_control_node-2] Stack trace (most recent call last) in thread 52414:
2025-11-26T03:14:57.5354715Z [ros2_control_node-2] #14 Object "/usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2", at 0xffffffffffffffff, in
2025-11-26T03:14:57.5355958Z [ros2_control_node-2] #13 Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x7f98bb17ca63, in __clone
2025-11-26T03:14:57.5356876Z [ros2_control_node-2] #12 Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x7f98bb0efaa3, in
2025-11-26T03:14:57.5357823Z [ros2_control_node-2] #11 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.33", at 0x7f98bb43adb3, in
2025-11-26T03:14:57.5359774Z [ros2_control_node-2] #10 Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node", at 0x55c216289f19, in std::thread::_State_impl<std::thread::_Invoker<std::tuple<main::{lambda()#1}> > >::_M_run()
2025-11-26T03:14:57.5362760Z [ros2_control_node-2] #9 Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node", at 0x55c216289f35, in std::thread::_Invoker<std::tuple<main::{lambda()#1}> >::operator()()
2025-11-26T03:14:57.5365641Z [ros2_control_node-2] #8 Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node", at 0x55c216289f61, in void std::thread::_Invoker<std::tuple<main::{lambda()#1}> >::_M_invoke<0ul>(std::_Index_tuple<0ul>)
2025-11-26T03:14:57.5368654Z [ros2_control_node-2] #7 Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node", at 0x55c216289fb4, in std::__invoke_result<main::{lambda()#1}>::type std::__invoke<main::{lambda()#1}>(main::{lambda()#1}&&)
2025-11-26T03:14:57.5371643Z [ros2_control_node-2] #6 Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node", at 0x55c216289ff1, in void std::__invoke_impl<void, main::{lambda()#1}>(std::__invoke_other, main::{lambda()#1}&&)
2025-11-26T03:14:57.5374557Z [ros2_control_node-2] #5 Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/controller_manager/ros2_control_node", at 0x55c216287c41, in main::{lambda()#1}::operator()() const
2025-11-26T03:14:57.5377249Z [ros2_control_node-2] #4 Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_manager/lib/libcontroller_manager.so", at 0x7f98bbe746d9, in controller_manager::ControllerManager::update(rclcpp::Time const&, rclcpp::Duration const&)
2025-11-26T03:14:57.5380272Z [ros2_control_node-2] #3 Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/controller_interface/lib/libcontroller_interface.so", at 0x7f98baf531b1, in controller_interface::ControllerInterfaceBase::trigger_update(rclcpp::Time const&, rclcpp::Duration const&)
2025-11-26T03:14:57.5383686Z [ros2_control_node-2] #2 Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/joint_trajectory_controller/lib/libjoint_trajectory_controller.so", at 0x7f9894cf8277, in joint_trajectory_controller::JointTrajectoryController::update(rclcpp::Time const&, rclcpp::Duration const&)
2025-11-26T03:14:57.5386741Z [ros2_control_node-2] #1 Object "/home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/install/joint_trajectory_controller/lib/libjoint_trajectory_controller.so", at 0x7f9894e3852a, in joint_trajectory_controller::Trajectory::time_from_start() const
2025-11-26T03:14:57.5388782Z [ros2_control_node-2] #0 Object "/opt/ros/rolling/lib/librclcpp.so", at 0x7f98bb76161b, in rclcpp::Time::Time(rclcpp::Time const&)
2025-11-26T03:14:57.5389770Z [ros2_control_node-2] Segmentation fault (Address not mapped to object [0x18])
2025-11-26T03:14:57.5390435Z [INFO] [relay-5]: process has finished cleanly [pid 52359]
2025-11-26T03:14:57.5391047Z [INFO] [robot_state_publisher-1]: process has finished cleanly [pid 52355]
2025-11-26T03:14:57.5393931Z [ERROR] [ros2_control_node-2]: process has died [pid 52356, 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 /tmp/launch_params_kwrdor7w --params-file /home/runner/work/ros2_control_ci/ros2_control_ci/.work/target_ws/src/ros-controls/topic_based_hardware_interfaces/joint_state_topic_hardware_interface/test/rrr/ros2_controllers.yaml'].
2025-11-26T03:14:57.5397141Z test_pass (joint_state_topic_hardware_interface.TestProcessPostShutdown.test_pass) ... FAIL
To Reproduce https://github.com/ros-controls/ros2_control_ci/issues/558
Yes, I have also faced this issue. This is my next refactoring target after PR #2019. I hope it is good with you, @christophfroehlich.