tocinc / rmw_coredx

CoreDX DDS integration layer for ROS2
Apache License 2.0
0 stars 6 forks source link

Dynamic Bridge crashes with services #31

Open nate-jackson opened 5 years ago

nate-jackson commented 5 years ago

When I run the ros1 dynamic bridge and then run a ros1 node that has a service, the bridge crashes.

Steps to reproduce: Terminal 1 - source /opt/ros/kinetic/setup.bash roscore

Terminal 2 - source /opt/ros/kinetic/setup.bash source ros2 bouncy ros2 run ros1_bridge dynamic_bridge -- --bridge-all-2to1-topics

Terminal 3 - source /opt/ros/kinetic/setup.bash rosrun turtlesim turtlesim_node

Another option for terminal 3, which is the ros1 node that has a service, is to run rviz (this is how this bug was originally discovered.

The failure mode is for the terminal running the dynamic_bridge to output something as follows:

ros2 run ros1_bridge dynamic_bridge -- --bridge-all-2to1-topicsCreated 2 to 1 bridge for service /clear Created 2 to 1 bridge for service /reset Created 1 to 2 bridge for service /clea Created 1 to 2 bridge for service /rese Created 1 to 2 bridge for service /cle Created 1 to 2 bridge for service /res Created 1 to 2 bridge for service /cl Created 1 to 2 bridge for service /re Created 1 to 2 bridge for service /c Created 1 to 2 bridge for service /r terminate called after throwing an instance of 'rclcpp::exceptions::InvalidServiceNameError' what(): Invalid service name: topic name must not end with a forward slash: '/' ^

This is high priority, as we require the dynamic bridge for key functionality. Our only workaround currently is to not use coredx.

nate-jackson commented 5 years ago

any update on this?