Comments (7)
I don't think we were aware of any ABI problem with release 1.11.5. We would not have released it to Hydro or Indigo, had we known of one. I agree that changing ABI merits a minor number bump (assuming the source API is compatible).
Which ROS distro are you on?
You have image_common 1.11.15, but older versions of other components depending on it?
from image_common.
We are on indigo, and we are using image_transport
quite extensively in our project. We updated our whole system last week, when the change from 1.11.4 to 1.11.5 got deployed to our robots. Since this date we are experiencing many segmentation faults in components that publish images via image_transport.
I'm by no means an expert in C++ ABI, but reading KDE's Binary Compatibility Issues With C++ - The Do's and Don'ts and looking at the change set form 1.11.4 -> 1.11.5 it contains some changes that are normally not allowed to maintain ABI compatibility e.g. making a function inline, or adding a virtual function to a base class). As I said, I'm not an expert, but I have seen strange behaviour like symbols not being found or segfaults due to such cases before. And if only the patch number is increased, then AFAIK, neither Debian packages nor ld
can figure this out.
Actually, re-compiling our packages solved the issue (in most cases, there is some other odd cases, that need further investigation), but obviously this does not work for packages released. We just did a full apt-get upgrade
on our indigo installation (without our own packages installed) and tested roslaunch openni_launch openni.launch
which was working perfectly find before and is not working since the update.
from image_common.
Sounds like we screwed up.
Not sure what to do about it at this point, I'll ask for advice on the ros-releases mailing list.
from image_common.
Yes, that was my mistake, I indeed broke the ABI by adding a member function (to provide an API to speed up certain cases). We cannot do anything at this point as it's gone public.
Thx for reporting though, for next time: you should be on shadow-fixed and whenever there is an issue, just mention it and we will block the sync to public. http://wiki.ros.org/ShadowRepository
from image_common.
@marc-hanheide Released packages should be fine. They all get rebuilt whenever a dependency is rebuilt.
from image_common.
@tfoote. Yes, agreed. Problem is we have our own build farm and that obviously missed that change. Maybe that could be better configured. I now triggered a rebuild of all our own packages. As i say, still seemed to gave a few problems but can't say for sure yet where they come from. But that could then solely be my own problem. I just wanted confirmation that the bugs we are seeing are indeed caused by the image_transport ABI change. Thanks.
from image_common.
@marc-hanheide: we thank you for reporting this problem, and apologize for the inconvenience it caused you.
from image_common.
Related Issues (20)
- Can't remap topic name and set hint at the same time; HOT 1
- image_transport::CameraPublisher::getNumSubscribers HOT 7
- How to deactivate those topics which are not needed? HOT 3
- [ROS2] error output when advertising publisher HOT 2
- Support Modern CMake practices HOT 2
- [Feature Request] Python bindings HOT 2
- fatal error: camera_info_manager/camera_info_manager.hpp: No such file or directory HOT 1
- New release for Rolling HOT 2
- Republishing multiple cameras has unexpected results HOT 6
- CameraInfoManager should register services inside node namespace
- image_transport::CameraPublisher does not support cv::Mat Type adapter
- Low message read rate on other device and excessive message size with tutorial publisher HOT 2
- disable_pub_plugins parameter commented out in ROS2 HOT 1
- Unable to leverage compressed image topics as expected, ROS2 Humble HOT 5
- Error will cmake
- image_transport publisher nodes should support subscriber specific compression config HOT 2
- Merge #276 broke downstream packages HOT 1
- Camera & info synchronization check timer wrong seconds value HOT 1
- No synchornization HOT 1
- undefined reference error after upgrading ros-rolling-image-transport
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from image_common.