-
Notifications
You must be signed in to change notification settings - Fork 671
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
fix(behavior_velocity_planner_common): fix unregister process #9913
fix(behavior_velocity_planner_common): fix unregister process #9913
Conversation
Signed-off-by: yuki-takagi-66 <[email protected]>
Thank you for contributing to the Autoware project! 🚧 If your pull request is in progress, switch it to draft mode. Please ensure:
|
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.
LGTM. Thanks you.
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #9913 +/- ##
==========================================
- Coverage 29.37% 29.37% -0.01%
==========================================
Files 1446 1447 +1
Lines 108399 108417 +18
Branches 42235 42235
==========================================
+ Hits 31844 31845 +1
- Misses 73471 73489 +18
+ Partials 3084 3083 -1
*This pull request uses carry forward flags. Click here to find out more. ☔ View full report in Codecov by Sentry. |
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.
I double-checked same process is done in
Lines 110 to 129 in 9c0e183
void SceneModuleManagerInterfaceWithRTC::deleteExpiredModules( const tier4_planning_msgs::msg::PathWithLaneId & path) { const auto isModuleExpired = getModuleExpiredFunction(path); auto itr = scene_modules_.begin(); while (itr != scene_modules_.end()) { if (isModuleExpired(*itr)) { const UUID uuid = getUUID((*itr)->getModuleId()); updateRTCStatus( uuid, (*itr)->isSafe(), State::SUCCEEDED, std::numeric_limits<double>::lowest(), clock_->now()); removeUUID((*itr)->getModuleId()); registered_module_id_set_.erase((*itr)->getModuleId()); itr = scene_modules_.erase(itr); } else { itr++; } } } Lines 448 to 469 in 9c0e183
void IntersectionModuleManager::deleteExpiredModules( const tier4_planning_msgs::msg::PathWithLaneId & path) { const auto isModuleExpired = getModuleExpiredFunction(path); auto itr = scene_modules_.begin(); while (itr != scene_modules_.end()) { if (isModuleExpired(*itr)) { // default removeRTCStatus(getUUID((*itr)->getModuleId())); removeUUID((*itr)->getModuleId()); // occlusion const auto intersection_module = std::dynamic_pointer_cast<IntersectionModule>(*itr); const auto occlusion_uuid = intersection_module->getOcclusionUUID(); occlusion_rtc_interface_.removeCooperateStatus(occlusion_uuid); registered_module_id_set_.erase((*itr)->getModuleId()); itr = scene_modules_.erase(itr); } else { itr++; } } }
6e0e6c0
into
autowarefoundation:main
Description
This PR fix unregister process problem of behavior_velocity_plannner modules which introduced by #9212
By the above PR, The variable
registered_module_id_set_
for RTC-independent modules was not being cleared.This PR fix this issue.
Related links
How was this PR tested?
psim and tier4 scenario tests
Notes for reviewers
None.
Interface changes
None.
Effects on system behavior
None.