-
Notifications
You must be signed in to change notification settings - Fork 508
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
Fix race condition when declaring parameters #525
Conversation
Why would a node have already declared these parameters? |
Not 100% sure, but I think this mainly happens for RViz since each display will load its own robot model and they all share the same node causing multiple declarations |
Codecov Report
@@ Coverage Diff @@
## main #525 +/- ##
==========================================
- Coverage 54.24% 54.18% -0.06%
==========================================
Files 192 192
Lines 20224 20187 -37
==========================================
- Hits 10969 10936 -33
+ Misses 9255 9251 -4
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So... RViz is initializing the plugins in separate threads with the same node instance? Well.. this is definitely another requirement for our WIP parameter API
moveit_ros/planning/robot_model_loader/src/robot_model_loader.cpp
Outdated
Show resolved
Hide resolved
We actually have interfaces for sharing a RobotModel(Loader) in static memory. |
1237961
to
a768e9e
Compare
I ended up fixing it by adding a shared robot model loaders, hopefully, this's a better solution than the previous one |
5414a12
to
ef61ac3
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Solution looks good to me. Please verify if we should or should not load IK solvers for the shared robot model
moveit_ros/planning_interface/common_planning_interface_objects/src/common_objects.cpp
Show resolved
Hide resolved
…ple displays for the same node
0924589
to
da2f124
Compare
…ple displays for the same node (moveit#525)
Description
Fix: #474
Not an optimal solution at all, but at least it works :D
Checklist