Add functions for resolving 'best available' QoS policies#60
Merged
jacobperron merged 4 commits intomasterfrom May 3, 2022
Merged
Add functions for resolving 'best available' QoS policies#60jacobperron merged 4 commits intomasterfrom
jacobperron merged 4 commits intomasterfrom
Conversation
Given a QoS profile and set of endpoints for the same topic, overwrite any policies set to BEST_AVAILABLE with a policy such that it matches all endpoints while maintaining a high level of service. Add testable functions for updating BEST_AVAILABLE policies, - qos_profile_get_best_available_for_subscription - qos_profile_get_best_available_for_publisher and add convenience functions that actual query the graph for RMW implementations to use, - qos_profile_get_best_available_for_topic_subscription - qos_profile_get_best_available_for_topic_publisher Signed-off-by: Jacob Perron <jacob@openrobotics.org>
This was referenced Apr 15, 2022
jacobperron
added a commit
to ros2/rclcpp
that referenced
this pull request
Apr 19, 2022
If users set a policy as 'best available', then the middleware will pick a policy that is most compatible with the current set of discovered endpoints while maintaining the highest level of service possible. For details about the expected behavior, see connected changes: - ros2/rmw#320 - ros2/rmw_dds_common#60 Signed-off-by: Jacob Perron <jacob@openrobotics.org>
j-rivero
reviewed
Apr 21, 2022
j-rivero
left a comment
There was a problem hiding this comment.
Found some minor questions but I can not find a single error in the logic. Test suite is great.
Signed-off-by: Jacob Perron <jacob@openrobotics.org>
Signed-off-by: Jacob Perron <jacob@openrobotics.org>
j-rivero
approved these changes
Apr 25, 2022
wjwwood
approved these changes
Apr 25, 2022
Basically, ignore best available policies by overwriting them with the default policy used for services. Signed-off-by: Jacob Perron <jacob@openrobotics.org>
Member
Author
|
PTAL at the latest addition to handle services: ed492d9 |
wjwwood
approved these changes
Apr 26, 2022
jacobperron
added a commit
to ros2/rclcpp
that referenced
this pull request
May 3, 2022
If users set a policy as 'best available', then the middleware will pick a policy that is most compatible with the current set of discovered endpoints while maintaining the highest level of service possible. For details about the expected behavior, see connected changes: - ros2/rmw#320 - ros2/rmw_dds_common#60 Signed-off-by: Jacob Perron <jacob@openrobotics.org>
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.
Connects to ros2/rmw#320
Given a QoS profile and set of endpoints for the same topic, overwrite any policies set to
BEST_AVAILABLE with a policy such that it matches all endpoints while maintaining a high
level of service.
Add testable functions for updating BEST_AVAILABLE policies,
and add convenience functions that actual query the graph for RMW implementations to use,