-
Notifications
You must be signed in to change notification settings - Fork 20
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 functions for resolving 'best available' QoS policies #60
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>
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>
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!
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.
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>
Basically, ignore best available policies by overwriting them with the default policy used for services. Signed-off-by: Jacob Perron <jacob@openrobotics.org>
PTAL at the latest addition to handle services: ed492d9 |
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>
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,