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

Fix watermarkstat CLI script for unconfigured PG counters #2220

Closed
wants to merge 4 commits into from
Closed

Fix watermarkstat CLI script for unconfigured PG counters #2220

wants to merge 4 commits into from

Conversation

shlomibitton
Copy link
Contributor

Signed-off-by: Shlomi Bitton shlomibi@nvidia.com

What I did

Since PG counters are created only if they are configured in the switch, it is not enough to relay only on the first entry in the DB when building the output table of watermarkstat script.
We need to go over all configured counters, check what is the max configured, and build the table accordingly.

How I did it

Iterate all configured PG buffers for all ports and find the max index.
Build the output table according to the max index.

How to verify it

Run test "iface_namingmode/test_iface_namingmode.py" including this PR: sonic-net/sonic-swss#2143 and observe it passes.

Previous command output (if the output of a command-line utility has changed)

New command output (if the output of a command-line utility has changed)

Shlomi Bitton added 4 commits June 14, 2022 16:27
Since PG/Queue counters are created only if they are configured in the switch, it is not enough to relay only on the first entry in the DB.
We need to go over all configured counters, check what is the max configured, and build the table accordingly.

Signed-off-by: Shlomi Bitton <shlomibi@nvidia.com>
@dprital dprital requested a review from yxieca June 15, 2022 19:32
element_idx = int(element.split(':')[1])
if (element_idx > max_idx):
max_idx = element_idx
if (not min_idx_found):
Copy link
Collaborator

Choose a reason for hiding this comment

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

@dprital imho, need to revisit this part of code. Not sure whether we need it.

@liat-grozovik
Copy link
Collaborator

@neethajohn could you please help to signoff?

@nazariig
Copy link
Collaborator

Closing in favour of #2239

@nazariig nazariig closed this Jun 28, 2022
neethajohn pushed a commit that referenced this pull request Jul 28, 2022
Signed-off-by: Nazarii Hnydyn nazariig@nvidia.com

Propagating #2220 with resolved review comments

What I did
Since PG counters are created only if they are configured in the switch, it is not enough to relay only on the first entry in the DB when building the output table of watermarkstat script.
We need to go over all configured counters, check what is the max configured, and build the table accordingly.

How I did it
Iterate all configured PG buffers for all ports and find the max index.
Build the output table according to the max index.

How to verify it
Run test "iface_namingmode/test_iface_namingmode.py" including this PR: sonic-net/sonic-swss#2143 and observe it passes.
yxieca pushed a commit that referenced this pull request Aug 8, 2022
Signed-off-by: Nazarii Hnydyn nazariig@nvidia.com

Propagating #2220 with resolved review comments

What I did
Since PG counters are created only if they are configured in the switch, it is not enough to relay only on the first entry in the DB when building the output table of watermarkstat script.
We need to go over all configured counters, check what is the max configured, and build the table accordingly.

How I did it
Iterate all configured PG buffers for all ports and find the max index.
Build the output table according to the max index.

How to verify it
Run test "iface_namingmode/test_iface_namingmode.py" including this PR: sonic-net/sonic-swss#2143 and observe it passes.
preetham-singh pushed a commit to preetham-singh/sonic-utilities that referenced this pull request Nov 21, 2022
…t#2239)

Signed-off-by: Nazarii Hnydyn nazariig@nvidia.com

Propagating sonic-net#2220 with resolved review comments

What I did
Since PG counters are created only if they are configured in the switch, it is not enough to relay only on the first entry in the DB when building the output table of watermarkstat script.
We need to go over all configured counters, check what is the max configured, and build the table accordingly.

How I did it
Iterate all configured PG buffers for all ports and find the max index.
Build the output table according to the max index.

How to verify it
Run test "iface_namingmode/test_iface_namingmode.py" including this PR: sonic-net/sonic-swss#2143 and observe it passes.
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.

4 participants