Skip to content

Backport #2953 to jazzy — crash reproducible on Jazzy with duplicate goal UUID #3120

@Smit-tay

Description

@Smit-tay

Generated by Generative AI

No response

Operating System:

Host: Linux 6.19.8-200.fc43.x86_64 - - Podman: PRETTY_NAME="Ubuntu 24.04.4 LTS" NAME="Ubuntu" VERSION_ID="24.04" VERSION="24.04.4 LTS (Noble Numbat)" VERSION_CODENAME=noble ID=ubuntu ID_LIKE=debian UBUNTU_CODENAME=noble

ROS version or commit hash:

jazzy

RMW implementation (if applicable):

No response

RMW Configuration (if applicable):

No response

Client library (if applicable):

rclcpp_action

'ros2 doctor --report' output

ros2 doctor --report
<COPY OUTPUT HERE>

Steps to reproduce issue

ros2 doctor --report

NETWORK CONFIGURATION
inet : 127.0.0.1
inet4 : ['127.0.0.1']
inet6 : ['::1']
netmask : 255.0.0.0
device : lo
flags : 73<RUNNING,UP,LOOPBACK>
mtu : 65536
inet : 192.168.179.25
inet4 : ['192.168.179.25']
ether : a0:ce:c8:8b:cd:86
inet6 : ['2001:a61:112d:cb01:a2ce:c8ff:fe8b:cd86', 'fdf7:82f:47de:0:6257:c635:80b3:ec2c', '2001:a61:112d:cb01:6257:c635:80b3:ec2c', 'fe80::a2ce:c8ff:fe8b:cd86%enp0s20u2c2']
netmask : 255.255.255.0
device : enp0s20u2c2
flags : 4163<BROADCAST,RUNNING,UP,MULTICAST>
mtu : 1500
broadcast : 192.168.179.255
inet : 10.88.0.1
inet4 : ['10.88.0.1']
ether : 9e:3d:ce:61:f4:7c
inet6 : ['fe80::9c3d:ceff:fe61:f47c%podman0']
netmask : 255.255.0.0
device : podman0
flags : 4163<BROADCAST,RUNNING,UP,MULTICAST>
mtu : 1500
broadcast : 10.88.255.255
ether : aa:7a:f2:0b:f6:94
inet6 : ['fe80::c40:11ff:fef8:5cf7%veth0']
device : veth0
flags : 4163<BROADCAST,RUNNING,UP,MULTICAST>
mtu : 1500
ether : ba:83:a5:c3:2e:d7
device : wlp2s0
flags : 4098<BROADCAST,MULTICAST>
mtu : 1500

PACKAGE VERSIONS
action_msgs : latest=2.0.3, local=2.0.3
actionlib_msgs : latest=5.3.7, local=5.3.6
ament_cmake : latest=2.5.6, local=2.5.5
ament_cmake_auto : latest=2.5.6, local=2.5.5
ament_cmake_copyright : latest=0.17.4, local=0.17.4
ament_cmake_core : latest=2.5.6, local=2.5.5
ament_cmake_cppcheck : latest=0.17.4, local=0.17.4
ament_cmake_cpplint : latest=0.17.4, local=0.17.4
ament_cmake_export_definitions : latest=2.5.6, local=2.5.5
ament_cmake_export_dependencies : latest=2.5.6, local=2.5.5
ament_cmake_export_include_directories : latest=2.5.6, local=2.5.5
ament_cmake_export_interfaces : latest=2.5.6, local=2.5.5
ament_cmake_export_libraries : latest=2.5.6, local=2.5.5
ament_cmake_export_link_flags : latest=2.5.6, local=2.5.5
ament_cmake_export_targets : latest=2.5.6, local=2.5.5
ament_cmake_flake8 : latest=0.17.4, local=0.17.4
ament_cmake_gen_version_h : latest=2.5.6, local=2.5.5
ament_cmake_gmock : latest=2.5.6, local=2.5.5
ament_cmake_gtest : latest=2.5.6, local=2.5.5
ament_cmake_include_directories : latest=2.5.6, local=2.5.5
ament_cmake_libraries : latest=2.5.6, local=2.5.5
ament_cmake_lint_cmake : latest=0.17.4, local=0.17.4
ament_cmake_pep257 : latest=0.17.4, local=0.17.4
ament_cmake_pytest : latest=2.5.6, local=2.5.5
ament_cmake_python : latest=2.5.6, local=2.5.5
ament_cmake_ros : latest=0.12.0, local=0.12.0
ament_cmake_target_dependencies : latest=2.5.6, local=2.5.5
ament_cmake_test : latest=2.5.6, local=2.5.5
ament_cmake_uncrustify : latest=0.17.4, local=0.17.4
ament_cmake_version : latest=2.5.6, local=2.5.5
ament_cmake_xmllint : latest=0.17.4, local=0.17.4
ament_copyright : latest=0.17.4, local=0.17.4
ament_cppcheck : latest=0.17.4, local=0.17.4
ament_cpplint : latest=0.17.4, local=0.17.4
ament_flake8 : latest=0.17.4, local=0.17.4
ament_index_cpp : latest=1.8.3, local=1.8.2
ament_index_python : latest=1.8.3, local=1.8.2
ament_lint : latest=0.17.4, local=0.17.4
ament_lint_auto : latest=0.17.4, local=0.17.4
ament_lint_cmake : latest=0.17.4, local=0.17.4
ament_lint_common : latest=0.17.4, local=0.17.4
ament_package : latest=0.16.5, local=0.16.5
ament_pep257 : latest=0.17.4, local=0.17.4
ament_uncrustify : latest=0.17.4, local=0.17.4
ament_xmllint : latest=0.17.4, local=0.17.4
builtin_interfaces : latest=2.0.3, local=2.0.3
class_loader : latest=2.7.0, local=2.7.0
common_interfaces : latest=5.3.7, local=5.3.6
composition_interfaces : latest=2.0.3, local=2.0.3
console_bridge_vendor : latest=1.7.1, local=1.7.1
diagnostic_msgs : latest=5.3.7, local=5.3.6
domain_coordinator : latest=0.12.0, local=0.12.0
fastrtps_cmake_module : latest=3.6.3, local=3.6.3
geometry_msgs : latest=5.3.7, local=5.3.6
launch : latest=3.4.10, local=3.4.10
launch_ros : latest=0.26.11, local=0.26.11
launch_testing : latest=3.4.10, local=3.4.10
launch_testing_ament_cmake : latest=3.4.10, local=3.4.10
launch_testing_ros : latest=0.26.11, local=0.26.11
launch_xml : latest=3.4.10, local=3.4.10
launch_yaml : latest=3.4.10, local=3.4.10
libstatistics_collector : latest=1.7.4, local=1.7.4
libyaml_vendor : latest=1.6.3, local=1.6.3
lifecycle_msgs : latest=2.0.3, local=2.0.3
nav_msgs : latest=5.3.7, local=5.3.6
osrf_pycommon : latest=2.1.7, local=2.1.7
pluginlib : latest=5.4.5, local=5.4.4
python_cmake_module : latest=0.11.1, local=0.11.1
rcl : latest=9.2.9, local=9.2.9
rcl_action : latest=9.2.9, local=9.2.9
rcl_interfaces : latest=2.0.3, local=2.0.3
rcl_lifecycle : latest=9.2.9, local=9.2.9
rcl_logging_interface : latest=3.1.1, local=3.1.1
rcl_logging_spdlog : latest=3.1.1, local=3.1.1
rcl_yaml_param_parser : latest=9.2.9, local=9.2.9
rclcpp : latest=28.1.18, local=28.1.16
rclcpp_action : latest=28.1.18, local=28.1.16
rclcpp_components : latest=28.1.18, local=28.1.16
rclcpp_lifecycle : latest=28.1.18, local=28.1.16
rclpy : latest=7.1.11, local=7.1.9
rcpputils : latest=2.11.3, local=2.11.3
rcutils : latest=6.7.5, local=6.7.5
rmw : latest=7.3.3, local=7.3.3
rmw_dds_common : latest=3.1.1, local=3.1.1
rmw_fastrtps_cpp : latest=8.4.3, local=8.4.3
rmw_fastrtps_shared_cpp : latest=8.4.3, local=8.4.3
rmw_implementation : latest=2.15.6, local=2.15.6
rmw_implementation_cmake : latest=7.3.3, local=7.3.3
ros2action : latest=0.32.9, local=0.32.8
ros2cli : latest=0.32.9, local=0.32.8
ros2cli_common_extensions : latest=0.3.1, local=0.3.1
ros2component : latest=0.32.9, local=0.32.8
ros2doctor : latest=0.32.9, local=0.32.8
ros2interface : latest=0.32.9, local=0.32.8
ros2launch : latest=0.26.11, local=0.26.11
ros2lifecycle : latest=0.32.9, local=0.32.8
ros2multicast : latest=0.32.9, local=0.32.8
ros2node : latest=0.32.9, local=0.32.8
ros2param : latest=0.32.9, local=0.32.8
ros2pkg : latest=0.32.9, local=0.32.8
ros2plugin : latest=5.4.5, local=5.4.4
ros2run : latest=0.32.9, local=0.32.8
ros2service : latest=0.32.9, local=0.32.8
ros2topic : latest=0.32.9, local=0.32.8
ros_core : latest=0.11.0, local=0.11.0
ros_environment : latest=4.2.1, local=4.2.1
ros_workspace : latest=1.0.3, local=1.0.3
rosgraph_msgs : latest=2.0.3, local=2.0.3
rosidl_adapter : latest=4.6.7, local=4.6.7
rosidl_cli : latest=4.6.7, local=4.6.7
rosidl_cmake : latest=4.6.7, local=4.6.7
rosidl_core_generators : latest=0.2.1, local=0.2.0
rosidl_core_runtime : latest=0.2.1, local=0.2.0
rosidl_default_generators : latest=1.6.0, local=1.6.0
rosidl_default_runtime : latest=1.6.0, local=1.6.0
rosidl_dynamic_typesupport : latest=0.1.2, local=0.1.2
rosidl_dynamic_typesupport_fastrtps : latest=0.1.0, local=0.1.0
rosidl_generator_c : latest=4.6.7, local=4.6.7
rosidl_generator_cpp : latest=4.6.7, local=4.6.7
rosidl_generator_py : latest=0.22.2, local=0.22.2
rosidl_generator_type_description : latest=4.6.7, local=4.6.7
rosidl_parser : latest=4.6.7, local=4.6.7
rosidl_pycommon : latest=4.6.7, local=4.6.7
rosidl_runtime_c : latest=4.6.7, local=4.6.7
rosidl_runtime_cpp : latest=4.6.7, local=4.6.7
rosidl_runtime_py : latest=0.13.1, local=0.13.1
rosidl_typesupport_c : latest=3.2.2, local=3.2.2
rosidl_typesupport_cpp : latest=3.2.2, local=3.2.2
rosidl_typesupport_fastrtps_c : latest=3.6.3, local=3.6.3
rosidl_typesupport_fastrtps_cpp : latest=3.6.3, local=3.6.3
rosidl_typesupport_interface : latest=4.6.7, local=4.6.7
rosidl_typesupport_introspection_c : latest=4.6.7, local=4.6.7
rosidl_typesupport_introspection_cpp : latest=4.6.7, local=4.6.7
rpyutils : latest=0.4.2, local=0.4.2
sensor_msgs : latest=5.3.7, local=5.3.6
service_msgs : latest=2.0.3, local=2.0.3
shape_msgs : latest=5.3.7, local=5.3.6
spdlog_vendor : latest=1.6.1, local=1.6.1
sros2 : latest=0.13.6, local=0.13.5
sros2_cmake : latest=0.13.6, local=0.13.5
statistics_msgs : latest=2.0.3, local=2.0.3
std_msgs : latest=5.3.7, local=5.3.6
std_srvs : latest=5.3.7, local=5.3.6
stereo_msgs : latest=5.3.7, local=5.3.6
tinyxml2_vendor : latest=0.9.2, local=0.9.2
tracetools : latest=8.2.5, local=8.2.5
trajectory_msgs : latest=5.3.7, local=5.3.6
type_description_interfaces : latest=2.0.3, local=2.0.3
uncrustify_vendor : latest=3.0.1, local=3.0.1
unique_identifier_msgs : latest=2.5.0, local=2.5.0
visualization_msgs : latest=5.3.7, local=5.3.6
eigen3_cmake_module : latest=0.3.0, local=0.3.0
kdl_parser : latest=2.11.0, local=2.11.0
message_filters : latest=4.11.12, local=4.11.10
orocos_kdl_vendor : latest=0.5.1, local=0.5.1
robot_state_publisher : latest=3.3.3, local=3.3.3
tf2 : latest=0.36.20, local=0.36.19
tf2_msgs : latest=0.36.20, local=0.36.19
tf2_ros : latest=0.36.20, local=0.36.19
urdf : latest=2.10.0, local=2.10.0
urdf_parser_plugin : latest=2.10.0, local=2.10.0
xacro : latest=2.1.1, local=2.1.1

PLATFORM INFORMATION
system : Linux
platform info : Linux-6.19.8-200.fc43.x86_64-x86_64-with-glibc2.39
release : 6.19.8-200.fc43.x86_64
processor : x86_64

QOS COMPATIBILITY LIST
topic [type] : /parameter_events [rcl_interfaces/msg/ParameterEvent]
publisher node : _ros2cli_daemon_11_add043595f3e44289744b0505ca8b213
subscriber node : swiftpro_hardware
compatibility status : OK
topic [type] : /parameter_events [rcl_interfaces/msg/ParameterEvent]
publisher node : swiftpro_hardware
subscriber node : swiftpro_hardware
compatibility status : OK

RMW MIDDLEWARE
middleware name : rmw_fastrtps_cpp

ROS 2 INFORMATION
distribution name : jazzy
distribution type : ros2
distribution status : active
release platforms : {'debian': ['bookworm'], 'rhel': ['9'], 'ubuntu': ['noble']}

Expected behavior

When an action client sends a goal with a UUID that duplicates a recently completed goal, the action server should reject the goal gracefully and return an appropriate error response to the client. No exception should propagate to terminate().

Actual behavior

The action server throws std::runtime_error("Failed to accept new goal") during goal handle cleanup, which calls std::terminate() and crashes the node process.

Additional information

No response

Metadata

Metadata

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions