-
Notifications
You must be signed in to change notification settings - Fork 531
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
Fixes flaky RobotState test #3105
Fixes flaky RobotState test #3105
Conversation
Without the changes (Release) -- Test passes:
Without the changes (Debug) -- Test fails:
With the changes (Debug) -- Test passes:
|
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.
Nice find!
Does this need backport? |
@sea-bass Yeah, that'd be great, thanks! |
@sea-bass Out of curiosity, are main PRs automatically merged into jazzy too? This one in particular feels like it'll affect all versions |
There is no What will happen is that, at some point, there will likely be a breaking change in Rolling that prompts us to cut a different |
* Fixes flaky RobotState test * Removes redundant line (cherry picked from commit f20265a) # Conflicts: # moveit_core/robot_state/test/robot_state_test.cpp
* Fixes flaky RobotState test * Removes redundant line (cherry picked from commit f20265a)
* Fixes flaky RobotState test (#3105) * Fixes flaky RobotState test * Removes redundant line (cherry picked from commit f20265a) # Conflicts: # moveit_core/robot_state/test/robot_state_test.cpp * Update robot_state_test.cpp --------- Co-authored-by: Tom Noble <53005340+TSNoble@users.noreply.github.com> Co-authored-by: Sebastian Castro <4603398+sea-bass@users.noreply.github.com>
Description
Fixes #3103 by ensuring that the
dirty_link_transforms_
member is cleared before querying theRobotState
See #3102 for more details on the cause.
TLDR:
Setting the build type to Release causes tests to silently fail, whereas Debug does not (some tests rely on assert calls, which are enabled / disabled based on the presence of the
NDBUG
macro variable, which is set by CMake depending on the build type).See the SonarScan pipeline call to ros-industrial/industrial_ci@master, which sets DCMAKE_BUILD_TYPE to Debug (and where the tests fail), and the same call in the rolling-ci pipeline (where the tests pass), which sets the same variable to Release.
I've also added a comment (and demonstration of the fix, at least for this test) locally.
Checklist