Skip to content
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

Add force_cache_mode_execute_read_only #29

Merged
merged 2 commits into from
Nov 27, 2023

Conversation

methylDragon
Copy link
Collaborator

@methylDragon methylDragon commented Nov 23, 2023

Builds on top of: #28

Adds the ability to force a GetMotionPlan service request to use motion cache mode ExecuteReadOnly regardless of the server's cache mode, on a per request basis.

@methylDragon methylDragon changed the base branch from main to ch3/plan-cache-tests November 23, 2023 06:07
Comment on lines +123 to +124
auto maybe_read_only =
this->getInput<bool>("force_cache_mode_execute_read_only");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The port should be defined in providedPorts (in the header) as well.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oops: d8f4cda

@methylDragon methylDragon force-pushed the ch3/readonly-in-request branch from d8f4cda to b98f8b9 Compare November 26, 2023 05:51
@methylDragon methylDragon force-pushed the ch3/readonly-in-request branch from b98f8b9 to 1776cd7 Compare November 27, 2023 21:21
@methylDragon methylDragon merged commit 644b5b4 into ch3/plan-cache-tests Nov 27, 2023
1 of 2 checks passed
methylDragon added a commit that referenced this pull request Nov 27, 2023
* Add count methods

Signed-off-by: methylDragon <[email protected]>

* Enable shared from this for cache class

Signed-off-by: methylDragon <[email protected]>

* Add unit test build rules

Signed-off-by: methylDragon <[email protected]>

* Add tests for motion plan cache (but not cartesian)

Signed-off-by: methylDragon <[email protected]>

* Fix bugs in cartesian caching

Signed-off-by: methylDragon <[email protected]>

* Add tests for cartesian plan cache

Signed-off-by: methylDragon <[email protected]>

* Exit if a test fails

Signed-off-by: methylDragon <[email protected]>

* Remove gtest import

Signed-off-by: methylDragon <[email protected]>

* Remove enable_shared_from_this

Signed-off-by: methylDragon <[email protected]>

* Only check for failure

Signed-off-by: methylDragon <[email protected]>

* Test half in-tolerance

Signed-off-by: methylDragon <[email protected]>

* Test different robot cache

Signed-off-by: methylDragon <[email protected]>

* Add force_cache_mode_execute_read_only (#29)

* Add force_cache_mode_execute_read_only

Signed-off-by: methylDragon <[email protected]>

* Add force_cache_mode_execute_read_only input port

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>
methylDragon added a commit that referenced this pull request Nov 27, 2023
* Remove query appending macro

Signed-off-by: methylDragon <[email protected]>

* Default to warehouse_ros plugin if warehouse plugin isn't set

Signed-off-by: methylDragon <[email protected]>

* Return and use init result

Signed-off-by: methylDragon <[email protected]>

* Add todo for catching exceptions

Signed-off-by: methylDragon <[email protected]>

* Implement plan fetching with configurable key

Signed-off-by: methylDragon <[email protected]>

* Add comments for exact match tolerance

Signed-off-by: methylDragon <[email protected]>

* Slightly refactor put plan

Signed-off-by: methylDragon <[email protected]>

* Rename overwrite to delete_worse_plans

Signed-off-by: methylDragon <[email protected]>

* Split out motion plan cache into its own library

Signed-off-by: methylDragon <[email protected]>

* Sort constraints for reduced cardinality

Signed-off-by: methylDragon <[email protected]>

* Rename util function

Signed-off-by: methylDragon <[email protected]>

* Add todo for is_diff

Signed-off-by: methylDragon <[email protected]>

* Add unit tests for motion plan cache (#28)

* Add count methods

Signed-off-by: methylDragon <[email protected]>

* Enable shared from this for cache class

Signed-off-by: methylDragon <[email protected]>

* Add unit test build rules

Signed-off-by: methylDragon <[email protected]>

* Add tests for motion plan cache (but not cartesian)

Signed-off-by: methylDragon <[email protected]>

* Fix bugs in cartesian caching

Signed-off-by: methylDragon <[email protected]>

* Add tests for cartesian plan cache

Signed-off-by: methylDragon <[email protected]>

* Exit if a test fails

Signed-off-by: methylDragon <[email protected]>

* Remove gtest import

Signed-off-by: methylDragon <[email protected]>

* Remove enable_shared_from_this

Signed-off-by: methylDragon <[email protected]>

* Only check for failure

Signed-off-by: methylDragon <[email protected]>

* Test half in-tolerance

Signed-off-by: methylDragon <[email protected]>

* Test different robot cache

Signed-off-by: methylDragon <[email protected]>

* Add force_cache_mode_execute_read_only (#29)

* Add force_cache_mode_execute_read_only

Signed-off-by: methylDragon <[email protected]>

* Add force_cache_mode_execute_read_only input port

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>
Yadunund pushed a commit that referenced this pull request Dec 4, 2023
* Add cartesian plan caching interfaces

Signed-off-by: methylDragon <[email protected]>

* Add construct_get_cartesian_plan_request

Signed-off-by: methylDragon <[email protected]>

* Add goal query and metadata

Signed-off-by: methylDragon <[email protected]>

* Add start query and metadata

Signed-off-by: methylDragon <[email protected]>

* Implement top level cache ops

Signed-off-by: methylDragon <[email protected]>

* Use motion plan cache for cartesian plans

Signed-off-by: methylDragon <[email protected]>

* Allow mismatched plan frames since we coerce anyway

Signed-off-by: methylDragon <[email protected]>

* Fix move bug

Signed-off-by: methylDragon <[email protected]>

* Plan cache code review fixes (sans unit tests) (#26)

* Remove query appending macro

Signed-off-by: methylDragon <[email protected]>

* Default to warehouse_ros plugin if warehouse plugin isn't set

Signed-off-by: methylDragon <[email protected]>

* Return and use init result

Signed-off-by: methylDragon <[email protected]>

* Add todo for catching exceptions

Signed-off-by: methylDragon <[email protected]>

* Implement plan fetching with configurable key

Signed-off-by: methylDragon <[email protected]>

* Add comments for exact match tolerance

Signed-off-by: methylDragon <[email protected]>

* Slightly refactor put plan

Signed-off-by: methylDragon <[email protected]>

* Rename overwrite to delete_worse_plans

Signed-off-by: methylDragon <[email protected]>

* Split out motion plan cache into its own library

Signed-off-by: methylDragon <[email protected]>

* Sort constraints for reduced cardinality

Signed-off-by: methylDragon <[email protected]>

* Rename util function

Signed-off-by: methylDragon <[email protected]>

* Add todo for is_diff

Signed-off-by: methylDragon <[email protected]>

* Add unit tests for motion plan cache (#28)

* Add count methods

Signed-off-by: methylDragon <[email protected]>

* Enable shared from this for cache class

Signed-off-by: methylDragon <[email protected]>

* Add unit test build rules

Signed-off-by: methylDragon <[email protected]>

* Add tests for motion plan cache (but not cartesian)

Signed-off-by: methylDragon <[email protected]>

* Fix bugs in cartesian caching

Signed-off-by: methylDragon <[email protected]>

* Add tests for cartesian plan cache

Signed-off-by: methylDragon <[email protected]>

* Exit if a test fails

Signed-off-by: methylDragon <[email protected]>

* Remove gtest import

Signed-off-by: methylDragon <[email protected]>

* Remove enable_shared_from_this

Signed-off-by: methylDragon <[email protected]>

* Only check for failure

Signed-off-by: methylDragon <[email protected]>

* Test half in-tolerance

Signed-off-by: methylDragon <[email protected]>

* Test different robot cache

Signed-off-by: methylDragon <[email protected]>

* Add force_cache_mode_execute_read_only (#29)

* Add force_cache_mode_execute_read_only

Signed-off-by: methylDragon <[email protected]>

* Add force_cache_mode_execute_read_only input port

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>
Yadunund pushed a commit that referenced this pull request Jan 22, 2024
* Add motion plan cache

Signed-off-by: methylDragon <[email protected]>

* Switch to snake case for function names

Signed-off-by: methylDragon <[email protected]>

* Print cache fetch time and key plans on planned execution time

Signed-off-by: methylDragon <[email protected]>

* Add overwrite_worse_plans param

Signed-off-by: methylDragon <[email protected]>

* Fix plan fetching printout and don't recache fetched plans

Signed-off-by: methylDragon <[email protected]>

* Update only use cached plans parameter name

Signed-off-by: methylDragon <[email protected]>

* Add copyright headers and motion_planner namespace

Signed-off-by: methylDragon <[email protected]>

* Make motion_plan_cache a unique_ptr instead of shared_ptr

Signed-off-by: methylDragon <[email protected]>

* Set numerical precision

Signed-off-by: methylDragon <[email protected]>

* Use enum for planner database mode

Signed-off-by: methylDragon <[email protected]>

* Rename cache methods to prepare for cartesian caching

Signed-off-by: methylDragon <[email protected]>

* Add very important warning to cache class

Signed-off-by: methylDragon <[email protected]>

* Fix access after move bug

Signed-off-by: methylDragon <[email protected]>

* Remove internal cache node

Signed-off-by: methylDragon <[email protected]>

* Implement cartesian plan cache (#18)

* Add cartesian plan caching interfaces

Signed-off-by: methylDragon <[email protected]>

* Add construct_get_cartesian_plan_request

Signed-off-by: methylDragon <[email protected]>

* Add goal query and metadata

Signed-off-by: methylDragon <[email protected]>

* Add start query and metadata

Signed-off-by: methylDragon <[email protected]>

* Implement top level cache ops

Signed-off-by: methylDragon <[email protected]>

* Use motion plan cache for cartesian plans

Signed-off-by: methylDragon <[email protected]>

* Allow mismatched plan frames since we coerce anyway

Signed-off-by: methylDragon <[email protected]>

* Fix move bug

Signed-off-by: methylDragon <[email protected]>

* Plan cache code review fixes (sans unit tests) (#26)

* Remove query appending macro

Signed-off-by: methylDragon <[email protected]>

* Default to warehouse_ros plugin if warehouse plugin isn't set

Signed-off-by: methylDragon <[email protected]>

* Return and use init result

Signed-off-by: methylDragon <[email protected]>

* Add todo for catching exceptions

Signed-off-by: methylDragon <[email protected]>

* Implement plan fetching with configurable key

Signed-off-by: methylDragon <[email protected]>

* Add comments for exact match tolerance

Signed-off-by: methylDragon <[email protected]>

* Slightly refactor put plan

Signed-off-by: methylDragon <[email protected]>

* Rename overwrite to delete_worse_plans

Signed-off-by: methylDragon <[email protected]>

* Split out motion plan cache into its own library

Signed-off-by: methylDragon <[email protected]>

* Sort constraints for reduced cardinality

Signed-off-by: methylDragon <[email protected]>

* Rename util function

Signed-off-by: methylDragon <[email protected]>

* Add todo for is_diff

Signed-off-by: methylDragon <[email protected]>

* Add unit tests for motion plan cache (#28)

* Add count methods

Signed-off-by: methylDragon <[email protected]>

* Enable shared from this for cache class

Signed-off-by: methylDragon <[email protected]>

* Add unit test build rules

Signed-off-by: methylDragon <[email protected]>

* Add tests for motion plan cache (but not cartesian)

Signed-off-by: methylDragon <[email protected]>

* Fix bugs in cartesian caching

Signed-off-by: methylDragon <[email protected]>

* Add tests for cartesian plan cache

Signed-off-by: methylDragon <[email protected]>

* Exit if a test fails

Signed-off-by: methylDragon <[email protected]>

* Remove gtest import

Signed-off-by: methylDragon <[email protected]>

* Remove enable_shared_from_this

Signed-off-by: methylDragon <[email protected]>

* Only check for failure

Signed-off-by: methylDragon <[email protected]>

* Test half in-tolerance

Signed-off-by: methylDragon <[email protected]>

* Test different robot cache

Signed-off-by: methylDragon <[email protected]>

* Add force_cache_mode_execute_read_only (#29)

* Add force_cache_mode_execute_read_only

Signed-off-by: methylDragon <[email protected]>

* Add force_cache_mode_execute_read_only input port

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>

* Fix nullptr dereference

Signed-off-by: methylDragon <[email protected]>

* Fix and add motion planner server tests (#30)

* Fix and add motion planner server tests

Signed-off-by: methylDragon <[email protected]>

* Add test deps

Signed-off-by: methylDragon <[email protected]>

* Add motion planner server test to CI

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>

---------

Signed-off-by: methylDragon <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants