-
Notifications
You must be signed in to change notification settings - Fork 108
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Bug report
Required Info:
- Operating System:
- Ubuntu 18.04, both AMD64 and ARM64
- Installation type:
- Binaries and from source
- Version or commit hash:
- DDS implementation:
- CycloneDDS
- Client library (if applicable):
- rclcpp only
Steps to reproduce issue
- On one terminal, run:
RMW_IMPLEMENTATION=rmw_cyclonedds_cpp ros2 run demo_nodes_cpp add_two_ints_server- On another terminal, run:
RMW_IMPLEMENTATION=rmw_cyclonedds_cpp ros2 run demo_nodes_cpp add_two_ints_client_asyncExpected behavior
A single service call takes place and succeeds i.e. you get logs on each terminal:
[INFO] [add_two_ints_server]: Incoming request
a: 2 b: 3[INFO] [add_two_ints_client]: Result of add_two_ints: 5Actual behavior
The client hangs with no output though the server does log so it appears to have received the request.
Additional information
It does not happen on rclpy. It also does not happen if bringing up both nodes via launch e.g.:
from launch import LaunchDescription
from launch_ros.actions import Node
def generate_launch_description():
return LaunchDescription([
Node(
package='demo_nodes_cpp',
node_executable='add_two_ints_server',
output='screen'
),
Node(
package='demo_nodes_cpp',
node_executable='add_two_ints_client_async',
output='screen'
)
])So it's likely a race.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working