Open mathias-luedtke opened 4 years ago
Thanks for the heads up! I'd definitely suggest creating a new .test
file with a single node and test against that too.
Is it possible something broke ABI compatibility in ros-control recently? We just did updated our apt packages from the public ROS apt repo on melodic, and controller managers in our code stopped working. After recompile, they worked again. Here's the version we're on now:
iron@m2a:~$ apt-cache policy ros-melodic-controller-manager
ros-melodic-controller-manager:
Installed: 0.16.0-1bionic.20200130.022304
Candidate: 0.16.0-1bionic.20200130.022304
Version table:
*** 0.16.0-1bionic.20200130.022304 500
500 http://packages.ros.org/ros/ubuntu bionic/main amd64 Packages
100 /var/lib/dpkg/status
(timing makes me think it may be the same problem as in this issue)
Is it possible something broke ABI compatibility in ros-control recently?
Indeed, those changes introduced ABI breakage. While the option of targeting Noetic for it was there, we opted for Melodic to deploy this functionality earlier to upstream as well as Noetic is still somewhat unclear and this setup allows us to incrementally improve upon the current solution with another set of ABI-breaking changes when Noetic comes.
@jonbinney Sorry for the inconvenience this caused you, I've just put out an announcement on discourse to let others know: https://discourse.ros.org/t/ros-control-abi-breakage-in-melodic-2020-02/12681
No worries @bmagyar - I'm happy to have the improvements in melodic and the recompilation isn't a problem.
Oh man, this bit us, because (gulp) we had a forked version of diff_drive_controller. I know we shouldn't have, but are doing some custom stuff that shouldn't be upstream. We build our own packages and had to version bump to rebuild and deploy to field units. Doh.
Thanks for the improvements, as always, onward and upward!
How about subclassing? Others do a lot of that with the joint_trajectory_controller. Feel free to propose which functions should be virtual.
On Fri, 13 Mar 2020, 17:21 Charles Brian Quinn, notifications@github.com wrote:
Oh man, this bit us, because (gulp) we had a forked version of diff_drive_controller. I know we shouldn't have, but are doing some custom stuff that shouldn't be upstream. We build our own packages and had to version bump to rebuild and deploy to field units. Doh.
Thanks for the improvements, as always, onward and upward!
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/ros-controls/ros_control/issues/418#issuecomment-598830381, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA24PYOKME63FKZ5AK2X6D3RHJTSJANCNFSM4KLUDZLA .
I noticed some spurious failures in the cron CI jobs of
industrial_ci
.One test sometimes fails with
In the logs further up I found
I guess that this occurs because we run two test nodes at the same time: https://github.com/ros-controls/ros_control/blob/8d901e019a3bc70333afd69574d887afc244ad2c/controller_manager_tests/test/controller_manager_scripts.test#L14-L15
Furthermore, it looks like the (parallel) switching breaks the controller manager somehow. It is either a bug in our test node or in the switching code or both.
380 might be related.
I will keep monitoring this.