rclcpp icon indicating copy to clipboard operation
rclcpp copied to clipboard

Publisher cleanup via service call results in deadlock on Jazzy

Open Serafadam opened this issue 1 year ago • 3 comments

Relevant issue here: https://github.com/luxonis/depthai-ros/issues/657 Short description: When using a service for resetting the driver's state (mostly cleaning up classes that have publishers inside them), the driver has a high chance to hang without response in rclcpp::Executor::wait_for_work (rcl_wait/rmw_wait). This was thought to be fixed by assigning Reentrant CB groups to services that correspond that call this cleanup, but it seems that it didn't help in the end. The issue has been observed on both Cyclone and FastDDS RMW. Humble and Noetic versions of the driver don't experience this issue.

Serafadam avatar Mar 10 '25 17:03 Serafadam

@Serafadam can you try with jazzy source build https://github.com/ros2/rclcpp/tree/jazzy? we have fixed several bugs related to executors, so i think it would be worth to give it a shot if you have not done that. if you still see the problem with rclcpp jazzy source build, could you provide the minimal self-contained reproducible example?

fujitatomoya avatar Mar 10 '25 21:03 fujitatomoya

Hi, thanks for the fast response, the issue seems to be solved when using latest commit, I'll also try to verify with the customer reporting the issue

Serafadam avatar Mar 11 '25 15:03 Serafadam

@Serafadam that is great to hear, and will be waiting for the update! thanks for taking your time to verify 👍

fujitatomoya avatar Mar 11 '25 16:03 fujitatomoya