Ensure that plugin initialization to be called before updating routines#3307
Merged
SteveMacenski merged 1 commit intoros-navigation:mainfrom Dec 6, 2022
Merged
Conversation
Contributor
|
@AlexeyMerzlyakov, please properly fill in PR template in the future. @SteveMacenski, use this instead.
|
AlexeyMerzlyakov
commented
Dec 2, 2022
| costmap_publisher_->publishCostmap(); | ||
| last_publish_ = current_time; | ||
| // Execute after start() will complete plugins activation | ||
| if (!stopped_) { |
Collaborator
Author
There was a problem hiding this comment.
In a good way, this change should be checked through std::atomic<bool>, as well as other parallel accessed variables, such as initialized_ (https://github.com/ros-planning/navigation2/blob/main/nav2_costmap_2d/src/costmap_2d_ros.cpp#L494 and https://github.com/ros-planning/navigation2/blob/main/nav2_costmap_2d/src/costmap_2d_ros.cpp#L527). This is rather a subject of separate ticket, I think.
7 tasks
SteveMacenski
approved these changes
Dec 6, 2022
jwallace42
pushed a commit
to jwallace42/navigation2
that referenced
this pull request
Dec 14, 2022
SteveMacenski
pushed a commit
that referenced
this pull request
Dec 21, 2022
SteveMacenski
added a commit
that referenced
this pull request
Dec 21, 2022
* remove exec_depend on behaviortree_cpp_v3 (#3279) * BT Service Node to throw if service was not available in time (#3256) * throw if service server wasn't available in time mimic the behavior of the bt action node constructor * throw if action unavailable in bt cancel action * use chrono literals namespace * fix linting errors * fix code style divergence * Remove duplicate of nav2_back_up_cancel_bt_node (#3332) * Remove unused velocity scaling config from example xml (#3330) Signed-off-by: Borong Yuan <yuanborong@hotmail.com> Signed-off-by: Borong Yuan <yuanborong@hotmail.com> * Make mapUpdateLoop() indicator variables to be thread-safe (#3308) * Ensure that plugin initialization to be called before updating routines (#3307) * Solve bug when CostmapInfoServer is reactivated (#3292) * Solve bug when CostmapInfoServer is reactivated * Implemented smoother selector bt node (#3283) * Implemented smoother selector bt node Signed-off-by: Owen Hooper <17ofh@queensu.ca> * updated copyright in modified file Signed-off-by: Owen Hooper <17ofh@queensu.ca> Signed-off-by: Owen Hooper <17ofh@queensu.ca> * Add allow_unknown parameter to theta star planner (#3286) * Add allow unknown parameter to theta star planner * Add allow unknown parameter to tests * missing comma * Change cost of unknown tiles * Uncrustify * bump to 1.1.3 for humble sync 3 Signed-off-by: Borong Yuan <yuanborong@hotmail.com> Signed-off-by: Owen Hooper <17ofh@queensu.ca> Co-authored-by: Adam Aposhian <aposhian.dev@gmail.com> Co-authored-by: Erwin Lejeune <erwin.lejeune15@gmail.com> Co-authored-by: Sven Langner <svenlr@users.noreply.github.com> Co-authored-by: Borong Yuan <yuanborong@hotmail.com> Co-authored-by: Alexey Merzlyakov <60094858+AlexeyMerzlyakov@users.noreply.github.com> Co-authored-by: MartiBolet <43337758+MartiBolet@users.noreply.github.com> Co-authored-by: Owen Hooper <17ofh@queensu.ca> Co-authored-by: Pedro Alejandro González <71234974+pepisg@users.noreply.github.com>
andrewlycas
pushed a commit
to StratomInc/navigation2
that referenced
this pull request
Feb 23, 2023
shrijitsingh99
pushed a commit
to moss-ag/navigation2
that referenced
this pull request
Mar 4, 2023
* remove exec_depend on behaviortree_cpp_v3 (ros-navigation#3279) * BT Service Node to throw if service was not available in time (ros-navigation#3256) * throw if service server wasn't available in time mimic the behavior of the bt action node constructor * throw if action unavailable in bt cancel action * use chrono literals namespace * fix linting errors * fix code style divergence * Remove duplicate of nav2_back_up_cancel_bt_node (ros-navigation#3332) * Remove unused velocity scaling config from example xml (ros-navigation#3330) Signed-off-by: Borong Yuan <yuanborong@hotmail.com> Signed-off-by: Borong Yuan <yuanborong@hotmail.com> * Make mapUpdateLoop() indicator variables to be thread-safe (ros-navigation#3308) * Ensure that plugin initialization to be called before updating routines (ros-navigation#3307) * Solve bug when CostmapInfoServer is reactivated (ros-navigation#3292) * Solve bug when CostmapInfoServer is reactivated * Implemented smoother selector bt node (ros-navigation#3283) * Implemented smoother selector bt node Signed-off-by: Owen Hooper <17ofh@queensu.ca> * updated copyright in modified file Signed-off-by: Owen Hooper <17ofh@queensu.ca> Signed-off-by: Owen Hooper <17ofh@queensu.ca> * Add allow_unknown parameter to theta star planner (ros-navigation#3286) * Add allow unknown parameter to theta star planner * Add allow unknown parameter to tests * missing comma * Change cost of unknown tiles * Uncrustify * bump to 1.1.3 for humble sync 3 Signed-off-by: Borong Yuan <yuanborong@hotmail.com> Signed-off-by: Owen Hooper <17ofh@queensu.ca> Co-authored-by: Adam Aposhian <aposhian.dev@gmail.com> Co-authored-by: Erwin Lejeune <erwin.lejeune15@gmail.com> Co-authored-by: Sven Langner <svenlr@users.noreply.github.com> Co-authored-by: Borong Yuan <yuanborong@hotmail.com> Co-authored-by: Alexey Merzlyakov <60094858+AlexeyMerzlyakov@users.noreply.github.com> Co-authored-by: MartiBolet <43337758+MartiBolet@users.noreply.github.com> Co-authored-by: Owen Hooper <17ofh@queensu.ca> Co-authored-by: Pedro Alejandro González <71234974+pepisg@users.noreply.github.com>
shrijitsingh99
pushed a commit
to moss-ag/navigation2
that referenced
this pull request
Mar 4, 2023
* remove exec_depend on behaviortree_cpp_v3 (ros-navigation#3279) * BT Service Node to throw if service was not available in time (ros-navigation#3256) * throw if service server wasn't available in time mimic the behavior of the bt action node constructor * throw if action unavailable in bt cancel action * use chrono literals namespace * fix linting errors * fix code style divergence * Remove duplicate of nav2_back_up_cancel_bt_node (ros-navigation#3332) * Remove unused velocity scaling config from example xml (ros-navigation#3330) Signed-off-by: Borong Yuan <yuanborong@hotmail.com> Signed-off-by: Borong Yuan <yuanborong@hotmail.com> * Make mapUpdateLoop() indicator variables to be thread-safe (ros-navigation#3308) * Ensure that plugin initialization to be called before updating routines (ros-navigation#3307) * Solve bug when CostmapInfoServer is reactivated (ros-navigation#3292) * Solve bug when CostmapInfoServer is reactivated * Implemented smoother selector bt node (ros-navigation#3283) * Implemented smoother selector bt node Signed-off-by: Owen Hooper <17ofh@queensu.ca> * updated copyright in modified file Signed-off-by: Owen Hooper <17ofh@queensu.ca> Signed-off-by: Owen Hooper <17ofh@queensu.ca> * Add allow_unknown parameter to theta star planner (ros-navigation#3286) * Add allow unknown parameter to theta star planner * Add allow unknown parameter to tests * missing comma * Change cost of unknown tiles * Uncrustify * bump to 1.1.3 for humble sync 3 Signed-off-by: Borong Yuan <yuanborong@hotmail.com> Signed-off-by: Owen Hooper <17ofh@queensu.ca> Co-authored-by: Adam Aposhian <aposhian.dev@gmail.com> Co-authored-by: Erwin Lejeune <erwin.lejeune15@gmail.com> Co-authored-by: Sven Langner <svenlr@users.noreply.github.com> Co-authored-by: Borong Yuan <yuanborong@hotmail.com> Co-authored-by: Alexey Merzlyakov <60094858+AlexeyMerzlyakov@users.noreply.github.com> Co-authored-by: MartiBolet <43337758+MartiBolet@users.noreply.github.com> Co-authored-by: Owen Hooper <17ofh@queensu.ca> Co-authored-by: Pedro Alejandro González <71234974+pepisg@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes the situations when Costmap2D plugin is being processed before initialization
Basic Info
nav2_costmap_2dandnav2_system_tests: no regressionsDescription of contribution in a few bullet points
Costmap2DROS::updateMap()is being processed in the main update loop only ifstopped_isfalse.OrderLayercostmap plugin that sleeps in theactivate()stage checking that parallel thread won't callupdateCosts()/updateBound()routines before activation will be finished. The testcase createsCostmap2DROSobject with this plugin enabled and then calls it though the mainCostmap2DROScallback API. If plugin API call sequence is wrong,OrderLayerwill throw an exception that will cause testcase to fail. If API call sequence is OK, testcase will be finished normally.Description of documentation updates required from your changes
Future work that may be required in bullet points
For Maintainers: