Debug grpc to fetch subscribe preferences of a yang path#130
Merged
anand-kumar-subramanian merged 1 commit intosonic-net:masterfrom Sep 27, 2023
Merged
Conversation
26bd42a to
590e3c5
Compare
590e3c5 to
a055051
Compare
kwangsuk
approved these changes
Sep 1, 2023
sallylsy
approved these changes
Sep 19, 2023
sallylsy
approved these changes
Sep 19, 2023
a055051 to
b6c9ab0
Compare
anand-kumar-subramanian
approved these changes
Sep 26, 2023
Added a new 'GetSubscribePreferences' grpc which accepts a list of yang paths and returns following subscription preferences for each: - OnChangeSupported (if on_change subscription will be accepted) - TargetDefinedMode (mode to which target_defined will map to) - WildcardSupported (if wildcard keys will be accepted) - MinSampleInterval (minimum sample_interval accepted, in nanos) Accepts only translib managed yang paths. Uses the existing translib API IsSubscribeSupported() to learn the preferences. This rpc is defined in a new protobuf sonic_debug.proto. It defines only one rpc 'GetSubscribePreferences' now. More debuggability actions can be added in future.
b6c9ab0 to
040959b
Compare
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.
Why I did it
Implements the debug grpc API as described in the HLD sonic-net/SONiC#1287.
Subscription preferences & capabilities for each oc-yang path is determined by individual yang handler code. There is no standard interface for clients to discover them. Hence a custom grpc is required.
How I did it
Added a new 'GetSubscribePreferences' grpc which accepts a list of yang paths and returns following subscription preferences for each:
- OnChangeSupported (if ON_CHANGE subscription will be accepted)
- TargetDefinedMode (mode to which TARGET_DEFINED will map to)
- WildcardSupported (if wildcard keys will be accepted)
- MinSampleInterval (minimum
sample_intervalaccepted, in nanoseconds)How to verify it
Added new gotests to call this grpc
Which release branch to backport (provide reason below if selected)
Description for the changelog
Link to config_db schema for YANG module changes
A picture of a cute animal (not mandatory but encouraged)