ros2/examples

"client_main" and "service_main" failed (hang up) 3/10 times

sharronliu opened this issue · 2 comments

Bug report

Required Info:

  • Operating System:
    Ubuntu 18.04
  • Installation type:
    Binaries
  • Version or commit hash:
    ROS2 Crystal Release
  • DDS implementation:
    the default one
  • Client library (if applicable):
    rclcpp

Steps to reproduce issue

from terminal #1
ros2 run examples_rclcpp_minimal_service service_main
from terminal #2, repeat
ros2 run examples_rclcpp_minimal_client client_main

Expected behavior

On each running of the client_main, the terminal #2 supposed to print
[INFO] [minimal_client]: result of 41 + 1 = 42

Actual behavior

Out of 10 running, only 7 success.
3 times client_main hang up, no output from client_main, nor output from service_main.
Once hand up, only ctrl+c can exit the client_main.

Additional information

$ ros2 run examples_rclcpp_minimal_client client_main
[INFO] [minimal_client]: result of 41 + 1 = 42
$ ros2 run examples_rclcpp_minimal_client client_main
^C[INFO] [rclcpp]: signal_handler(signal_value=2)
[ERROR] [minimal_client]: service call failed :(
$ ros2 run examples_rclcpp_minimal_client client_main
[INFO] [minimal_client]: result of 41 + 1 = 42
$ ros2 run examples_rclcpp_minimal_client client_main
[INFO] [minimal_client]: result of 41 + 1 = 42
$ ros2 run examples_rclcpp_minimal_client client_main
[INFO] [minimal_client]: result of 41 + 1 = 42
$ ros2 run examples_rclcpp_minimal_client client_main
[INFO] [minimal_client]: result of 41 + 1 = 42
$ ros2 run examples_rclcpp_minimal_client client_main
^C[INFO] [rclcpp]: signal_handler(signal_value=2)
[ERROR] [minimal_client]: service call failed :(
$ ros2 run examples_rclcpp_minimal_client client_main
[INFO] [minimal_client]: result of 41 + 1 = 42
$ ros2 run examples_rclcpp_minimal_client client_main
^C[INFO] [rclcpp]: signal_handler(signal_value=2)
[ERROR] [minimal_client]: service call failed :(
$ ros2 run examples_rclcpp_minimal_client client_main
[INFO] [minimal_client]: result of 41 + 1 = 42

This has been also reported with the services in the demos repo: ros2/demos#304

Perhaps we consider migrating the issue to ros2/ros2 since it appears to be a fundamental issue with services.

Thanks for linking these two.