ros1_bridge
ros1_bridge copied to clipboard
Ignoring errored service requests
Bug report
Required Info:
- Operating System:
- Ubuntu 18.04
- Installation type:
- Build from source
- Version or commit hash: 46baa889bcb9808b5b461f98faee520a90d57347
- DDS implementation: FastRTPS
- Client library (if applicable): rclcpp
Steps to reproduce issue
- Create service in ROS1
- Create client in ROS2
- Call service in client producing an unhandled exception in the ROS1 service callback
Expected behavior
-
ros1_bridge
displays the error message but doesn't crash/stop.
Actual behavior
-
ros1_bridge
stops/crashes displaying the error message
Additional information
If this shouldn't be the default behavior for some reason, a command-line argument e.g. --ignore-errors
would be great.
Can you provide a SSCCE for reproducing the error? Thanks
@machinekoder Friendly ping. If you could provide reproducible example of a service and client that causes the error that would be great.
We'd appreciate help implementing a fix/enhancement for this. For now I'm putting this in the backlog as we don't have time to address it.
Instead of moving the ticket to the backlog
this ticket needs more information
.
@machinekoder Friendly ping.
Reproducible example - run the following:
-
roscore
-
dynamic_bridge
- ROS 1
rospy_tutorials
add_to_ints_server
with the server callback modified to raise an exception - ROS 2
demo_nodes_py
add_to_ints_client
Atm the rclcpp
/ rcl
/ rm
API must return a response from a service call and there is no way to communicate a problem. Until that is resolved the bridge can't do anything but error in this case (or never return the service call which isn't a good option either).