Skip to content

Faulty boundary condition check in dynamic parameter update of floating point parameters #2898

@klaxalk

Description

@klaxalk

Generated by Generative AI

No response

Operating System:

Linux klaxalk 6.11.0-29-generic #29~24.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Jun 26 14:16:59 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

ROS version or commit hash:

jazzy

RMW implementation (if applicable):

No response

RMW Configuration (if applicable):

No response

Client library (if applicable):

rclcpp

'ros2 doctor --report' output

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<UP,LOOPBACK,RUNNING>
mtu          : 65536
inet         : 192.168.0.103
inet4        : ['192.168.0.103']
ether        : cc:5e:f8:1f:99:6f
inet6        : ['fe80::7b3:14a6:b843:6ca7%wlp6s0']
netmask      : 255.255.255.0
device       : wlp6s0
flags        : 4163<UP,MULTICAST,RUNNING,BROADCAST>
mtu          : 1500
broadcast    : 192.168.0.255
inet         : 100.91.78.91
inet4        : ['100.91.78.91']
inet6        : ['fd7a:115c:a1e0::5201:4e5b', 'fe80::51d9:a595:755f:8a5b%tailscale0']
netmask      : 255.255.255.255
device       : tailscale0
flags        : 4305<MULTICAST,RUNNING,UP,NOARP,PTP>
mtu          : 1280
inet         : 172.20.0.1
inet4        : ['172.20.0.1']
ether        : 92:6e:63:3b:84:7b
netmask      : 255.255.0.0
device       : br-427d95c23462
flags        : 4099<UP,MULTICAST,BROADCAST>
mtu          : 1500
broadcast    : 172.20.255.255
inet         : 172.17.0.1
inet4        : ['172.17.0.1']
ether        : 4a:37:ba:17:73:c1
inet6        : ['fe80::4837:baff:fe17:73c1%docker0']
netmask      : 255.255.0.0
device       : docker0
flags        : 4163<UP,MULTICAST,RUNNING,BROADCAST>
mtu          : 1500
broadcast    : 172.17.255.255
inet         : 172.19.0.1
inet4        : ['172.19.0.1']
ether        : 5a:98:25:9b:67:97
inet6        : ['fe80::5898:25ff:fe9b:6797%br-aa912cbf29df']
netmask      : 255.255.0.0
device       : br-aa912cbf29df
flags        : 4163<UP,MULTICAST,RUNNING,BROADCAST>
mtu          : 1500
broadcast    : 172.19.255.255
inet         : 172.18.0.1
inet4        : ['172.18.0.1']
ether        : 06:c7:ed:09:16:09
inet6        : ['fe80::4c7:edff:fe09:1609%br-11af55fe2bbb']
netmask      : 255.255.0.0
device       : br-11af55fe2bbb
flags        : 4163<UP,MULTICAST,RUNNING,BROADCAST>
mtu          : 1500
broadcast    : 172.18.255.255
ether        : ea:1b:ea:85:83:e1
inet6        : ['fe80::e81b:eaff:fe85:83e1%veth0e45e4d']
device       : veth0e45e4d
flags        : 4163<UP,MULTICAST,RUNNING,BROADCAST>
mtu          : 1500
ether        : 4e:81:ef:7e:d0:ad
inet6        : ['fe80::4c81:efff:fe7e:d0ad%veth982cfda']
device       : veth982cfda
flags        : 4163<UP,MULTICAST,RUNNING,BROADCAST>
mtu          : 1500
ether        : 2e:05:38:e8:7d:2c
inet6        : ['fe80::2c05:38ff:fee8:7d2c%veth853114c']
device       : veth853114c
flags        : 4163<UP,MULTICAST,RUNNING,BROADCAST>
mtu          : 1500
ether        : 2a:60:fa:9c:03:57
inet6        : ['fe80::2860:faff:fe9c:357%veth721e79e']
device       : veth721e79e
flags        : 4163<UP,MULTICAST,RUNNING,BROADCAST>
mtu          : 1500
ether        : 04:7b:cb:67:9b:11
device       : enx047bcb679b11
flags        : 4099<UP,MULTICAST,BROADCAST>
mtu          : 1500

   PACKAGE VERSIONS
sub_pub_torture_test                      : latest=N/A, local=1.0.0
example_plugins                           : latest=N/A, local=1.0.0
example_plugin_manager                    : latest=N/A, local=1.0.0
ros2_examples                             : latest=N/A, local=1.0.0
ros2_lib                                  : latest=N/A, local=1.0.0
mrs_uav_path_loader_ros2                  : latest=N/A, local=0.0.0
path_loader_interfaces                    : latest=N/A, local=0.0.1
mrs_uav_system_full                       : latest=N/A, local=2.0.0
mrs_uav_system                            : latest=N/A, local=2.0.0
mrs_uav_core                              : latest=N/A, local=2.0.0
mrs_uav_trajectory_generation             : latest=N/A, local=2.0.0
mrs_uav_trackers                          : latest=N/A, local=2.0.0
mrs_uav_state_estimators                  : latest=N/A, local=2.0.0
mrs_uav_px4_api                           : latest=N/A, local=2.0.0
mrs_uav_controllers                       : latest=N/A, local=2.0.0
mrs_uav_managers                          : latest=N/A, local=2.0.0
mrs_uav_flightforge_simulation            : latest=N/A, local=2.0.0
mrs_multirotor_simulator                  : latest=N/A, local=2.0.0
mrs_uav_hw_api                            : latest=N/A, local=2.0.0
mrs_uav_autostart                         : latest=N/A, local=2.0.0
mrs_uav_testing                           : latest=N/A, local=2.0.0
mrs_uav_status                            : latest=N/A, local=2.0.0
mrs_uav_modules                           : latest=N/A, local=2.0.0
mrs_uav_deployment                        : latest=N/A, local=2.0.0
mrs_serial                                : latest=N/A, local=2.0.0
mrs_lib                                   : latest=N/A, local=2.0.0
mrs_msgs                                  : latest=N/A, local=2.0.0
mrs_modules_msgs                          : latest=N/A, local=2.0.0
tracetools_image_pipeline                 : latest=5.0.11, local=5.0.10
ament_cmake_export_dependencies           : latest=2.5.4, local=2.5.4
ros2topic                                 : latest=0.32.4, local=0.32.4
tf2_geometry_msgs                         : latest=0.36.12, local=0.36.11
ament_xmllint                             : latest=0.17.2, local=0.17.2
stereo_msgs                               : latest=5.3.6, local=5.3.6
rcl_action                                : latest=9.2.7, local=9.2.6
tf2_bullet                                : latest=0.36.12, local=0.36.11
rosbag2_storage_mcap                      : latest=0.26.7, local=0.26.7
rqt_py_common                             : latest=1.6.0, local=1.6.0
rcl_interfaces                            : latest=2.0.2, local=2.0.2
rmw_cyclonedds_cpp                        : latest=2.2.3, local=2.2.3
perception                                : latest=0.11.0, local=0.11.0
lifecycle_msgs                            : latest=2.0.2, local=2.0.2
launch_testing_ament_cmake                : latest=3.4.5, local=3.4.4
rclpy                                     : latest=7.1.4, local=7.1.4
depth_image_proc                          : latest=5.0.11, local=5.0.10
pcl_msgs                                  : latest=1.0.0, local=1.0.0
image_geometry                            : latest=4.1.0, local=4.1.0
rosidl_generator_py                       : latest=0.22.1, local=0.22.1
topic_tools                               : latest=1.3.3, local=1.3.3
rcl_logging_interface                     : latest=3.1.1, local=3.1.1
ros2param                                 : latest=0.32.4, local=0.32.4
zenoh_cpp_vendor                          : latest=0.2.5, local=0.2.3
rqt_service_caller                        : latest=1.2.1, local=1.2.1
rclcpp                                    : latest=28.1.10, local=28.1.9
rqt_py_console                            : latest=1.2.2, local=1.2.2
action_tutorials_py                       : latest=0.33.5, local=0.33.5
qt_gui                                    : latest=2.7.5, local=2.7.5
ament_uncrustify                          : latest=0.17.2, local=0.17.2
examples_rclpy_minimal_subscriber         : latest=0.19.5, local=0.19.5
teleop_twist_keyboard                     : latest=2.4.0, local=2.4.0
gz_common_vendor                          : latest=0.0.8, local=0.0.8
rqt_common_plugins                        : latest=1.2.0, local=1.2.0
rosbag2_compression_zstd                  : latest=0.26.7, local=0.26.7
plotjuggler_ros                           : latest=2.1.2, local=2.1.2
ament_cmake_version                       : latest=2.5.4, local=2.5.4
ament_cmake_uncrustify                    : latest=0.17.2, local=0.17.2
ament_lint_cmake                          : latest=0.17.2, local=0.17.2
sdl2_vendor                               : latest=3.3.0, local=3.3.0
rqt_shell                                 : latest=1.2.2, local=1.2.2
tf2_sensor_msgs                           : latest=0.36.12, local=0.36.11
qt_dotgraph                               : latest=2.7.5, local=2.7.5
gz_math_vendor                            : latest=0.0.8, local=0.0.8
ros_workspace                             : latest=1.0.3, local=1.0.3
gz_transport_vendor                       : latest=0.0.6, local=0.0.6
ament_cmake_lint_cmake                    : latest=0.17.2, local=0.17.2
ament_cmake_core                          : latest=2.5.4, local=2.5.4
rosidl_default_generators                 : latest=1.6.0, local=1.6.0
sensor_msgs_py                            : latest=5.3.6, local=5.3.6
depthimage_to_laserscan                   : latest=2.5.1, local=2.5.1
rqt_msg                                   : latest=1.5.1, local=1.5.1
rosidl_typesupport_introspection_c        : latest=4.6.5, local=4.6.5
mavros                                    : latest=2.10.1, local=2.10.0
ament_cmake_gen_version_h                 : latest=2.5.4, local=2.5.4
gz_plugin_vendor                          : latest=0.0.5, local=0.0.5
ament_cmake_pytest                        : latest=2.5.4, local=2.5.4
ros2action                                : latest=0.32.4, local=0.32.4
ament_cmake_include_directories           : latest=2.5.4, local=2.5.4
map_msgs                                  : latest=2.4.1, local=2.4.1
rmw_zenoh_cpp                             : latest=0.2.5, local=0.2.3
stereo_image_proc                         : latest=5.0.11, local=5.0.10
std_srvs                                  : latest=5.3.6, local=5.3.6
rqt_gui_py                                : latest=1.6.0, local=1.6.0
eigen3_cmake_module                       : latest=0.3.0, local=0.3.0
simulation                                : latest=0.11.0, local=0.11.0
gz_sensors_vendor                         : latest=0.0.6, local=0.0.6
kdl_parser                                : latest=2.11.0, local=2.11.0
launch_testing                            : latest=3.4.5, local=3.4.4
rclcpp_action                             : latest=28.1.10, local=28.1.9
rosidl_default_runtime                    : latest=1.6.0, local=1.6.0
rqt_image_view                            : latest=1.3.0, local=1.3.0
diagnostic_msgs                           : latest=5.3.6, local=5.3.6
rcl_logging_spdlog                        : latest=3.1.1, local=3.1.1
libstatistics_collector                   : latest=1.7.4, local=1.7.4
camera_info_manager                       : latest=5.1.7, local=5.1.6
rosidl_cmake                              : latest=4.6.5, local=4.6.5
urdf_parser_plugin                        : latest=2.10.0, local=2.10.0
tf2_eigen_kdl                             : latest=0.36.12, local=0.36.11
libyaml_vendor                            : latest=1.6.3, local=1.6.3
rttest                                    : latest=0.17.1, local=0.17.1
dummy_robot_bringup                       : latest=0.33.5, local=0.33.5
rqt_console                               : latest=2.2.1, local=2.2.1
rqt_publisher                             : latest=1.7.2, local=1.7.2
examples_rclcpp_multithreaded_executor    : latest=0.19.5, local=0.19.5
tf2_msgs                                  : latest=0.36.12, local=0.36.11
ament_cmake_libraries                     : latest=2.5.4, local=2.5.4
action_tutorials_cpp                      : latest=0.33.5, local=0.33.5
rmw_dds_common                            : latest=3.1.0, local=3.1.0
image_view                                : latest=5.0.11, local=5.0.10
ament_cmake_xmllint                       : latest=0.17.2, local=0.17.2
rpyutils                                  : latest=0.4.1, local=0.4.1
rosidl_adapter                            : latest=4.6.5, local=4.6.5
pendulum_control                          : latest=0.33.5, local=0.33.5
zstd_vendor                               : latest=0.26.7, local=0.26.7
ros_gz_bridge                             : latest=1.0.16, local=1.0.12
examples_rclcpp_minimal_action_client     : latest=0.19.5, local=0.19.5
rqt_action                                : latest=2.2.0, local=2.2.0
geometry_msgs                             : latest=5.3.6, local=5.3.6
intra_process_demo                        : latest=0.33.5, local=0.33.5
rosidl_core_runtime                       : latest=0.2.0, local=0.2.0
ament_flake8                              : latest=0.17.2, local=0.17.2
launch_testing_ros                        : latest=0.26.8, local=0.26.7
desktop                                   : latest=0.11.0, local=0.11.0
ament_index_python                        : latest=1.8.1, local=1.8.1
dummy_sensors                             : latest=0.33.5, local=0.33.5
point_cloud_transport                     : latest=4.0.4, local=4.0.4
examples_rclpy_executors                  : latest=0.19.5, local=0.19.5
tf2_eigen                                 : latest=0.36.12, local=0.36.11
nlopt                                     : latest=N/A, local=2.4.2
rcpputils                                 : latest=2.11.2, local=2.11.2
ament_cmake_python                        : latest=2.5.4, local=2.5.4
zstd_image_transport                      : latest=4.0.4, local=4.0.4
pluginlib                                 : latest=5.4.2, local=5.4.2
domain_coordinator                        : latest=0.12.0, local=0.12.0
sensor_msgs                               : latest=5.3.6, local=5.3.6
ros2bag                                   : latest=0.26.7, local=0.26.7
ros_gz_image                              : latest=1.0.16, local=1.0.12
yaml_cpp_vendor                           : latest=9.0.1, local=9.0.1
sros2                                     : latest=0.13.3, local=0.13.3
ros_gz_interfaces                         : latest=1.0.16, local=1.0.12
rosidl_parser                             : latest=4.6.5, local=4.6.5
tango_icons_vendor                        : latest=0.3.0, local=0.3.0
image_transport_plugins                   : latest=4.0.4, local=4.0.4
ament_cmake_pep257                        : latest=0.17.2, local=0.17.2
ros_gz_sim_demos                          : latest=1.0.16, local=1.0.12
examples_rclcpp_minimal_composition       : latest=0.19.5, local=0.19.5
turtlesim                                 : latest=1.8.3, local=1.8.3
compressed_depth_image_transport          : latest=4.0.4, local=4.0.4
rosidl_typesupport_c                      : latest=3.2.2, local=3.2.2
examples_rclcpp_minimal_action_server     : latest=0.19.5, local=0.19.5
rcl_yaml_param_parser                     : latest=9.2.7, local=9.2.6
ament_cmake_export_link_flags             : latest=2.5.4, local=2.5.4
image_transport                           : latest=5.1.7, local=5.1.6
ament_cmake_flake8                        : latest=0.17.2, local=0.17.2
logging_demo                              : latest=0.33.5, local=0.33.5
example_interfaces                        : latest=0.12.0, local=0.12.0
rqt_tf_tree                               : latest=1.0.5, local=1.0.5
realsense2_camera_msgs                    : latest=4.55.1, local=4.55.1
desktop_full                              : latest=0.11.0, local=0.11.0
vision_msgs                               : latest=4.1.1, local=4.1.1
angles                                    : latest=1.16.0, local=1.16.0
ros2lifecycle                             : latest=0.32.4, local=0.32.4
gz_msgs_vendor                            : latest=0.0.6, local=0.0.6
ros_environment                           : latest=4.2.1, local=4.2.1
ros2node                                  : latest=0.32.4, local=0.32.4
ament_cppcheck                            : latest=0.17.2, local=0.17.2
composition_interfaces                    : latest=2.0.2, local=2.0.2
demo_nodes_cpp_native                     : latest=0.33.5, local=0.33.5
rosidl_generator_c                        : latest=4.6.5, local=4.6.5
mcap_vendor                               : latest=0.26.7, local=0.26.7
common_interfaces                         : latest=5.3.6, local=5.3.6
demo_nodes_cpp                            : latest=0.33.5, local=0.33.5
rmw                                       : latest=7.3.2, local=7.3.2
rosidl_dynamic_typesupport                : latest=0.1.2, local=0.1.2
ament_cmake_export_targets                : latest=2.5.4, local=2.5.4
gz_fuel_tools_vendor                      : latest=0.0.6, local=0.0.6
vision_opencv                             : latest=4.1.0, local=4.1.0
rosidl_typesupport_cpp                    : latest=3.2.2, local=3.2.2
image_tools                               : latest=0.33.5, local=0.33.5
rosidl_runtime_cpp                        : latest=4.6.5, local=4.6.5
rosidl_pycommon                           : latest=4.6.5, local=4.6.5
rosbag2_transport                         : latest=0.26.7, local=0.26.7
ament_index_cpp                           : latest=1.8.1, local=1.8.1
rosgraph_msgs                             : latest=2.0.2, local=2.0.2
gz_dartsim_vendor                         : latest=0.0.3, local=0.0.3
action_tutorials_interfaces               : latest=0.33.5, local=0.33.5
ros_base                                  : latest=0.11.0, local=0.11.0
python_qt_binding                         : latest=2.2.1, local=2.2.1
qt_gui_py_common                          : latest=2.7.5, local=2.7.5
rosbag2_compression                       : latest=0.26.7, local=0.26.7
type_description_interfaces               : latest=2.0.2, local=2.0.2
rosidl_dynamic_typesupport_fastrtps       : latest=0.1.0, local=0.1.0
actuator_msgs                             : latest=0.0.1, local=0.0.1
ament_cmake_cppcheck                      : latest=0.17.2, local=0.17.2
examples_rclpy_minimal_publisher          : latest=0.19.5, local=0.19.5
builtin_interfaces                        : latest=2.0.2, local=2.0.2
ament_cmake_export_definitions            : latest=2.5.4, local=2.5.4
robot_state_publisher                     : latest=3.3.3, local=3.3.3
std_msgs                                  : latest=5.3.6, local=5.3.6
ros2component                             : latest=0.32.4, local=0.32.4
class_loader                              : latest=2.7.0, local=2.7.0
ros2interface                             : latest=0.32.4, local=0.32.4
ament_cmake_target_dependencies           : latest=2.5.4, local=2.5.4
rosidl_typesupport_interface              : latest=4.6.5, local=4.6.5
ament_cmake_copyright                     : latest=0.17.2, local=0.17.2
tf2_py                                    : latest=0.36.12, local=0.36.11
rmw_implementation                        : latest=2.15.5, local=2.15.5
ros2pkg                                   : latest=0.32.4, local=0.32.4
launch_xml                                : latest=3.4.5, local=3.4.4
rmw_fastrtps_cpp                          : latest=8.4.2, local=8.4.2
ament_cmake_ros                           : latest=0.12.0, local=0.12.0
osrf_pycommon                             : latest=2.1.6, local=2.1.6
quality_of_service_demo_cpp               : latest=0.33.5, local=0.33.5
resource_retriever                        : latest=3.4.4, local=3.4.4
compressed_image_transport                : latest=4.0.4, local=4.0.4
rosidl_typesupport_introspection_cpp      : latest=4.6.5, local=4.6.5
rosidl_cli                                : latest=4.6.5, local=4.6.5
image_pipeline                            : latest=5.0.11, local=5.0.10
rosidl_typesupport_fastrtps_cpp           : latest=3.6.1, local=3.6.1
laser_filters                             : latest=2.0.9, local=2.0.8
laser_geometry                            : latest=2.7.1, local=2.7.0
nav_msgs                                  : latest=5.3.6, local=5.3.6
rosidl_core_generators                    : latest=0.2.0, local=0.2.0
ros_core                                  : latest=0.11.0, local=0.11.0
ament_cmake_export_interfaces             : latest=2.5.4, local=2.5.4
rosbag2_storage                           : latest=0.26.7, local=0.26.7
rqt_srv                                   : latest=1.2.2, local=1.2.2
ament_cmake_test                          : latest=2.5.4, local=2.5.4
rosidl_runtime_c                          : latest=4.6.5, local=4.6.5
rmw_implementation_cmake                  : latest=7.3.2, local=7.3.2
examples_rclcpp_minimal_subscriber        : latest=0.19.5, local=0.19.5
python_orocos_kdl_vendor                  : latest=0.5.1, local=0.5.1
console_bridge_vendor                     : latest=1.7.1, local=1.7.1
rosbag2_storage_default_plugins           : latest=0.26.7, local=0.26.7
rcl_lifecycle                             : latest=9.2.7, local=9.2.6
rosbag2_py                                : latest=0.26.7, local=0.26.7
rqt_gui_cpp                               : latest=1.6.0, local=1.6.0
ament_cpplint                             : latest=0.17.2, local=0.17.2
urdf                                      : latest=2.10.0, local=2.10.0
rosidl_generator_cpp                      : latest=4.6.5, local=4.6.5
rviz_ogre_vendor                          : latest=14.1.12, local=14.1.11
shape_msgs                                : latest=5.3.6, local=5.3.6
theora_image_transport                    : latest=4.0.4, local=4.0.4
service_msgs                              : latest=2.0.2, local=2.0.2
image_publisher                           : latest=5.0.11, local=5.0.10
plotjuggler                               : latest=3.9.2, local=3.9.2
rosbag2_cpp                               : latest=0.26.7, local=0.26.7
fastrtps_cmake_module                     : latest=3.6.1, local=3.6.1
eigen_stl_containers                      : latest=1.1.0, local=1.1.0
statistics_msgs                           : latest=2.0.2, local=2.0.2
ament_copyright                           : latest=0.17.2, local=0.17.2
rosidl_runtime_py                         : latest=0.13.1, local=0.13.1
examples_rclcpp_minimal_publisher         : latest=0.19.5, local=0.19.5
tracetools                                : latest=8.2.3, local=8.2.3
rmw_fastrtps_shared_cpp                   : latest=8.4.2, local=8.4.2
image_proc                                : latest=5.0.11, local=5.0.10
ament_lint_common                         : latest=0.17.2, local=0.17.2
rviz2                                     : latest=14.1.12, local=14.1.11
ros2multicast                             : latest=0.32.4, local=0.32.4
rviz_common                               : latest=14.1.12, local=14.1.11
perception_pcl                            : latest=2.6.2, local=2.6.2
ros2cli_common_extensions                 : latest=0.3.0, local=0.3.0
geographic_msgs                           : latest=1.0.6, local=1.0.6
gz_tools_vendor                           : latest=0.0.6, local=0.0.6
ament_cmake_cpplint                       : latest=0.17.2, local=0.17.2
tf2_kdl                                   : latest=0.36.12, local=0.36.11
rqt_graph                                 : latest=1.5.4, local=1.5.4
quality_of_service_demo_py                : latest=0.33.5, local=0.33.5
libcurl_vendor                            : latest=3.4.4, local=3.4.4
launch                                    : latest=3.4.5, local=3.4.4
ament_cmake_gtest                         : latest=2.5.4, local=2.5.4
ros2cli                                   : latest=0.32.4, local=0.32.4
unique_identifier_msgs                    : latest=2.5.0, local=2.5.0
pcl_ros                                   : latest=2.6.2, local=2.6.2
ros2service                               : latest=0.32.4, local=0.32.4
gz_ogre_next_vendor                       : latest=0.0.5, local=0.0.5
ament_package                             : latest=0.16.4, local=0.16.4
sros2_cmake                               : latest=0.13.3, local=0.13.3
topic_monitor                             : latest=0.33.5, local=0.33.5
ros2run                                   : latest=0.32.4, local=0.32.4
rosbag2_interfaces                        : latest=0.26.7, local=0.26.7
rqt_bag_plugins                           : latest=1.5.4, local=1.5.4
tlsf_cpp                                  : latest=0.17.1, local=0.17.1
python_cmake_module                       : latest=0.11.1, local=0.11.1
gz_rendering_vendor                       : latest=0.0.6, local=0.0.6
pybind11_vendor                           : latest=3.1.3, local=3.1.3
examples_rclcpp_minimal_client            : latest=0.19.5, local=0.19.5
mavros_msgs                               : latest=2.10.1, local=2.10.0
gz_gui_vendor                             : latest=0.0.5, local=0.0.5
ament_cmake                               : latest=2.5.4, local=2.5.4
pendulum_msgs                             : latest=0.33.5, local=0.33.5
rclcpp_components                         : latest=28.1.10, local=28.1.9
tf2                                       : latest=0.36.12, local=0.36.11
ament_cmake_export_include_directories    : latest=2.5.4, local=2.5.4
tlsf                                      : latest=0.9.0, local=0.9.0
joy                                       : latest=3.3.0, local=3.3.0
libmavconn                                : latest=2.10.1, local=2.10.0
rqt_gui                                   : latest=1.6.0, local=1.6.0
rviz_assimp_vendor                        : latest=14.1.12, local=14.1.11
sdformat_urdf                             : latest=1.0.2, local=1.0.2
composition                               : latest=0.33.5, local=0.33.5
ament_lint_auto                           : latest=0.17.2, local=0.17.2
sqlite3_vendor                            : latest=0.26.7, local=0.26.7
rosidl_typesupport_fastrtps_c             : latest=3.6.1, local=3.6.1
visualization_msgs                        : latest=5.3.6, local=5.3.6
rosidl_generator_type_description         : latest=4.6.5, local=4.6.5
cv_bridge                                 : latest=4.1.0, local=4.1.0
gz_utils_vendor                           : latest=0.0.5, local=0.0.5
launch_yaml                               : latest=3.4.5, local=3.4.4
rqt_reconfigure                           : latest=1.6.2, local=1.6.2
rqt_plot                                  : latest=1.4.3, local=1.4.3
rqt_bag                                   : latest=1.5.4, local=1.5.4
rviz_default_plugins                      : latest=14.1.12, local=14.1.11
keyboard_handler                          : latest=0.3.1, local=0.3.1
ament_cmake_export_libraries              : latest=2.5.4, local=2.5.4
camera_calibration                        : latest=5.0.11, local=5.0.10
tf2_ros_py                                : latest=0.36.12, local=0.36.11
qt_gui_cpp                                : latest=2.7.5, local=2.7.5
topic_tools_interfaces                    : latest=1.3.3, local=1.3.3
examples_rclcpp_minimal_timer             : latest=0.19.5, local=0.19.5
rosbag2_storage_sqlite3                   : latest=0.26.7, local=0.26.7
examples_rclpy_minimal_action_server      : latest=0.19.5, local=0.19.5
rosbag2                                   : latest=0.26.7, local=0.26.7
gz_cmake_vendor                           : latest=0.0.10, local=0.0.9
tf2_ros                                   : latest=0.36.12, local=0.36.11
ros2doctor                                : latest=0.32.4, local=0.32.4
demo_nodes_py                             : latest=0.33.5, local=0.33.5
image_rotate                              : latest=5.0.11, local=5.0.10
examples_rclpy_minimal_action_client      : latest=0.19.5, local=0.19.5
ament_lint                                : latest=0.17.2, local=0.17.2
teleop_twist_joy                          : latest=2.6.3, local=2.6.3
rcutils                                   : latest=6.7.2, local=6.7.2
interactive_markers                       : latest=2.5.4, local=2.5.4
rclcpp_lifecycle                          : latest=28.1.10, local=28.1.9
ros_gz_sim                                : latest=1.0.16, local=1.0.12
tf2_tools                                 : latest=0.36.12, local=0.36.11
realsense2_camera                         : latest=4.55.1, local=4.55.1
gz_physics_vendor                         : latest=0.0.6, local=0.0.6
uncrustify_vendor                         : latest=3.0.1, local=3.0.1
xacro                                     : latest=2.0.13, local=2.0.13
rviz_rendering                            : latest=14.1.12, local=14.1.11
lifecycle                                 : latest=0.33.5, local=0.33.5
filters                                   : latest=2.2.1, local=2.2.1
pcl_conversions                           : latest=2.6.2, local=2.6.2
liblz4_vendor                             : latest=0.26.7, local=0.26.7
examples_rclpy_minimal_client             : latest=0.19.5, local=0.19.5
rqt_topic                                 : latest=1.7.3, local=1.7.3
gps_msgs                                  : latest=2.1.1, local=2.0.4
actionlib_msgs                            : latest=5.3.6, local=5.3.6
ament_cmake_gmock                         : latest=2.5.4, local=2.5.4
ament_pep257                              : latest=0.17.2, local=0.17.2
diagnostic_updater                        : latest=4.2.6, local=4.2.4
image_common                              : latest=5.1.7, local=5.1.6
examples_rclpy_minimal_service            : latest=0.19.5, local=0.19.5
examples_rclcpp_minimal_service           : latest=0.19.5, local=0.19.5
dummy_map_server                          : latest=0.33.5, local=0.33.5
tinyxml2_vendor                           : latest=0.9.1, local=0.9.1
mrs_mpc_solvers                           : latest=N/A, local=1.0.0
launch_ros                                : latest=0.26.8, local=0.26.7
sdformat_vendor                           : latest=0.0.9, local=0.0.9
gz_sim_vendor                             : latest=0.0.8, local=0.0.8
rcl                                       : latest=9.2.7, local=9.2.6
action_msgs                               : latest=2.0.2, local=2.0.2
spdlog_vendor                             : latest=1.6.1, local=1.6.1
message_filters                           : latest=4.11.6, local=4.11.6
ros2launch                                : latest=0.26.8, local=0.26.7
ament_cmake_auto                          : latest=2.5.4, local=2.5.4
orocos_kdl_vendor                         : latest=0.5.1, local=0.5.1
trajectory_msgs                           : latest=5.3.6, local=5.3.6
camera_calibration_parsers                : latest=5.1.7, local=5.1.6
geometry2                                 : latest=0.36.12, local=0.36.11

   PLATFORM INFORMATION
system           : Linux
platform info    : Linux-6.11.0-29-generic-x86_64-with-glibc2.39
release          : 6.11.0-29-generic
processor        : x86_64

   QOS COMPATIBILITY LIST
compatibility status    : No publisher/subscriber pairs found

   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']}

   TOPIC LIST
topic               : none
publisher count     : 0
subscriber count    : 0

Steps to reproduce issue

  1. Set the range to a floating point parameter to, e.g., <0.0, 100.0>
  2. Call the service for setting the parameter to -inf or inf.
  3. The parameter is set correctly.

Expected behavior

  1. The parameter value should be rejected because it falls out of the range.

Actual behavior

Before the range check, the value of the parameter is first checked against the boundary condition (here) using the function __are_doubles_equal:

__are_doubles_equal(double x, double y, double ulp = 100.0)

bool
__are_doubles_equal(double x, double y, double ulp = 100.0)
{
  return std::abs(x - y) <= std::numeric_limits<double>::epsilon() * std::abs(x + y) * ulp;
}

However, this function is faulty, because if any of the x and y arguments is inf, -inf or nan, the function will return true, bypassing the range check completely. This happens due to both sides of the inequality becoming inf, because anything + inf = inf. This can be seen in the example here: https://godbolt.org/z/v8EKqoGTe.

Additional information

Suggestion: handle the special values first by using the std::isfinite() check.

Metadata

Metadata

Assignees

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