You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've run ASan reports via colcon sanitizer reports over beluga and beluga_amcl. You will be happy to hear that beluga is free of detectable address bugs but there was one caught in beluga_amcl. In particular, I think this is not a problem of AmclNode itself, but a problem in rclcpp that I've also seen in other distros using normal Nodes. The problem involves NodeParameters and other classes... It could be well very well a valid issue or a false positive detection. I've spent some time not so long ago debugging a similar problem in rcl and rclcpp with @ivanpauno, who may remember our interaction, which was also detected by ASan tests.
It could be a good thing to atomize the case to a do-nothing node in a simple test that reproduces the error to make sure it is not related to our code (which I believe it is not related).
Platform (please complete the following information):
This is not on us. rclcpp's use of std::allocator for C allocations down in rcl and below is broken. rclcpp::allocator::retyped_allocate specifies a size, but rclcpp::allocator::retyped_deallocate doesn't (because it can't, because a C++ allocator is being used to implement a C malloc / free API). That's what ASan is complaining about.
This is not on us. rclcpp's use of std::allocator for C allocations down in rcl and below is broken. rclcpp::allocator::retyped_allocate specifies a size, but rclcpp::allocator::retyped_deallocate doesn't (because it can't, because a C++ allocator is being used to implement a C malloc / free API). That's what ASan is complaining about.
Lol, I forgot that was a thing.
Yes, that's completely broken, it doesn't really break because std::allocator ignores the size when you dealloc AFAIK.
But it can break with custom allocators.
Bug description
I've run ASan reports via colcon sanitizer reports over beluga and beluga_amcl. You will be happy to hear that beluga is free of detectable address bugs but there was one caught in beluga_amcl. In particular, I think this is not a problem of AmclNode itself, but a problem in rclcpp that I've also seen in other distros using normal Nodes. The problem involves NodeParameters and other classes... It could be well very well a valid issue or a false positive detection. I've spent some time not so long ago debugging a similar problem in rcl and rclcpp with @ivanpauno, who may remember our interaction, which was also detected by ASan tests.
It could be a good thing to atomize the case to a do-nothing node in a simple test that reproduces the error to make sure it is not related to our code (which I believe it is not related).
Platform (please complete the following information):
Beluga
version: 3144527How to reproduce
List steps to reproduce the issue:
and
The last one produces the following relevant output:
Other tests are successful.
Expected behavior
Everything should pass.
Actual behavior
There is an error.
Additional context
N/A
The text was updated successfully, but these errors were encountered: