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

Define telemetry-atomic-exempt annotation. Add telemetry-atomic-exempt annotation to AFT counters containers #1186

Merged
merged 10 commits into from
Oct 22, 2024
10 changes: 9 additions & 1 deletion release/models/aft/openconfig-aft-common.yang
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,13 @@ submodule openconfig-aft-common {
"Submodule containing definitions of groupings that are re-used
across multiple contexts within the AFT model.";

oc-ext:openconfig-version "2.6.0";
oc-ext:openconfig-version "2.7.0";

revision "2024-09-19" {
description
"Add atomic-exempt attribute to AFT counters containers.";
reference "2.7.0";
}

revision "2024-04-25" {
description
Expand Down Expand Up @@ -785,6 +791,7 @@ submodule openconfig-aft-common {
}

grouping aft-common-entry-counter-state {
oc-ext:telemetry-atomic-exempt;
description
"Counters relating to a forwarding entry";

Expand All @@ -804,6 +811,7 @@ submodule openconfig-aft-common {
}

grouping aft-common-backup-entry-counter-state {
oc-ext:telemetry-atomic-exempt;
description
"Counters relating to a backup forwarding entry";

Expand Down
27 changes: 25 additions & 2 deletions release/models/openconfig-extensions.yang
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,13 @@ module openconfig-extensions {
"This module provides extensions to the YANG language to allow
OpenConfig specific functionality and meta-data to be defined.";

oc-ext:openconfig-version "0.5.1";
oc-ext:openconfig-version "0.6.0";

revision "2024-09-19" {
description
"Add telemetry-atomic-exempt annotation.";
reference "0.6.0";
}

revision "2022-10-05" {
description
Expand Down Expand Up @@ -154,7 +160,7 @@ module openconfig-extensions {
extension telemetry-atomic {
description
"The telemetry-atomic annotation is specified in the context of
a subtree (containre, or list), and indicates that all nodes
a subtree (container, or list), and indicates that all nodes
within the subtree are always updated together within the data
model. For example, all elements under the subtree may be updated
as a result of a new alarm being raised, or the arrival of a new
Expand All @@ -164,6 +170,23 @@ module openconfig-extensions {
optimisations for sending or storing the corresponding data.";
}

extension telemetry-atomic-exempt {
description
"The telemetry-atomic-exempt annotation is specified in the context
of a subtree (container, or list), and indicates that all nodes
Copy link
Member

Choose a reason for hiding this comment

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

I think telemetry-atomic-exempt could also be defined for an individual node. While I don't have a use case for this at the moment, it seems allowing it is useful.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I agree. Updated the description to have "node".

within the subtree are not always updated together within the data
model of the parent tree. All elements under the subtree may not be
updated as a result of a new alarm being raised, or the arrival of
a new protocol message that updates the parent tree.

This annotation allows parent tree containers with telemetry-atomic
annotation to not be updated when a more frequently updated subtree.
For example, a counters container is present.

This extension should only be used when there is a parent that
contains telemetry-atomic extension.";
}
dplore marked this conversation as resolved.
Show resolved Hide resolved

extension operational {
description
"The operational annotation is specified in the context of a
Expand Down
Loading