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
unfortunately, the MD5 checksum of a ROS message is of the message definition itself, not of the message contents. It's meant to be used for comparing the version of a message.
Hence, the OMPL planner will re-use a context even with distinct requests, and re-plan between the same (now wrong) start/end states. There does not appear to be any built-in way to compare ROS messages, supposedly because comparing floats is not well-defined.
Correction: operator== is implemented for ROS messages. That does require us to hold on to the whole message though. Maybe we could use a shared_ptr to avoid duplication between user code and planner code?
The text was updated successfully, but these errors were encountered:
For benchmarking this is not an issue since preRun calls a force refresh, so context will not be reused. I'll take a look into comparing the entire ROS message - this has been a thorn for a while.
Hello,
unfortunately, the MD5 checksum of a ROS message is of the message definition itself, not of the message contents. It's meant to be used for comparing the version of a message.
Hence, the OMPL planner will re-use a context even with distinct requests, and re-plan between the same (now wrong) start/end states.
There does not appear to be any built-in way to compare ROS messages, supposedly because comparing floats is not well-defined.Correction:
operator==
is implemented for ROS messages. That does require us to hold on to the whole message though. Maybe we could use a shared_ptr to avoid duplication between user code and planner code?The text was updated successfully, but these errors were encountered: