-
Notifications
You must be signed in to change notification settings - Fork 765
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fast-RTPS not terminating cleanly [5681] #473
Comments
We encountered the same problem by creating and deleting publishers in ROS2 in high frequency. A workaround which we tested is attached. But is probably not the best solution. (The patch just demonstrates that it does not block anymore, receiving is not working...) |
@DensoADAS Would you be able to push a PR with a cleaned up version of your fix? |
The updated patch is attached. |
Convert the transport UDP receiver into a non-blocking receiver to permit proper thread termination. issue eProsima#473
I think this should have been solved by #569, which will be part of release 1.8.1 (#574) scheduled for June 28th. @guillaumeautran @DensoADAS Could you check on your side? |
I am not able to check this issue until later in the Fall. We can either leave this report as is for now (and I'll clean it up later) or close it (and I can always re-open it or create a new one later). |
Closing this, as it was solved long ago by #569 and I have not been able to reproduce it with the current release. |
The problem is expressed with ROS2 and Fast-RTPS. When the last ROS2 node is deleted and the ROS2 system properly terminated, a Fast-RTPS ChannelResource thread lingers behind blocked on a network receive call preventing proper termination of the stack.
Stacktrace of the surviving thread:
And here is the thread that is waiting on it and blocking the proper termination of the application.
The text was updated successfully, but these errors were encountered: