Skip to content

Fixed logic to delete the interface from BUFFER_QUEUE#16687

Merged
StormLiangMS merged 1 commit intosonic-net:masterfrom
raaghavendrakra-arista:raaghav_snmp_bq
Feb 17, 2025
Merged

Fixed logic to delete the interface from BUFFER_QUEUE#16687
StormLiangMS merged 1 commit intosonic-net:masterfrom
raaghavendrakra-arista:raaghav_snmp_bq

Conversation

@raaghavendrakra-arista
Copy link
Contributor

@raaghavendrakra-arista raaghavendrakra-arista commented Jan 27, 2025

Description of PR

The interface from where the queuestats fetched was different from the interface that was deleted from the BUFFER_QUEUE.

Github issue: https://github.com/aristanetworks/sonic-qual.msft/issues/371
This issue is seen after PR: #15688

The issue was that
XML dump is below for context

buffer_queue_to_del = 'Ethernet112|6'
buffer_queues = ['Ethernet112|0-1', 'Ethernet112|2-4', 'Ethernet112|5', 'Ethernet112|6', 'Ethernet112|7', 'Ethernet116|0-1', ...]
buffer_queues_removed = 1
interface  = 'Ethernet68'

When the string 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68" and it picked as a candidate to delete it from BQ, which is wrong.

Summary:
Fixes # https://github.com/aristanetworks/sonic-qual.msft/issues/371

Type of change

  • Bug fix
  • Testbed and Framework(new/improvement)
  • New Test case
    • Skipped for non-supported platforms
  • Test case improvement

Back port request

  • 202012
  • 202205
  • 202305
  • 202311
  • 202405
  • 202411

Approach

What is the motivation for this PR?

to address the issue https://github.com/aristanetworks/sonic-qual.msft/issues/371

How did you do it?

Through code-walk and xml dump from TC run.

How did you verify/test it?

I re-ran the test to make sure the interface delete logic is working fine

Any platform specific information?

Supported testbed topology if it's a new test case?

Documentation

Github  issue: https://github.com/aristanetworks/sonic-qual.msft/issues/371
The interface from  where the queuestats fetched was different from the
interface that was deleted from the BUFFER_QUEUE.

This issue is seen after PR: sonic-net#15688
@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@vkjammala-arista
Copy link
Contributor

Hi @StormLiangMS , can you please help merging this PR? Thanks!

Copy link
Collaborator

@StormLiangMS StormLiangMS left a comment

Choose a reason for hiding this comment

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

LGTM

@StormLiangMS StormLiangMS merged commit 7b9f7b6 into sonic-net:master Feb 17, 2025
14 checks passed
mssonicbld pushed a commit to mssonicbld/sonic-mgmt that referenced this pull request Feb 17, 2025
Description of PR
The interface from where the queuestats fetched was different from the interface that was deleted from the BUFFER_QUEUE.

Github issue: aristanetworks/sonic-qual.msft#371
This issue is seen after PR: sonic-net#15688

The issue was that
XML dump is below for context

buffer_queue_to_del = 'Ethernet112|6'
buffer_queues = ['Ethernet112|0-1', 'Ethernet112|2-4', 'Ethernet112|5', 'Ethernet112|6', 'Ethernet112|7', 'Ethernet116|0-1', ...]
buffer_queues_removed = 1
interface  = 'Ethernet68'
When the string 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68" and it picked as a candidate to delete it from BQ, which is wrong.

Summary:
Fixes # aristanetworks/sonic-qual.msft#371
mssonicbld pushed a commit to mssonicbld/sonic-mgmt that referenced this pull request Feb 17, 2025
Description of PR
The interface from where the queuestats fetched was different from the interface that was deleted from the BUFFER_QUEUE.

Github issue: aristanetworks/sonic-qual.msft#371
This issue is seen after PR: sonic-net#15688

The issue was that
XML dump is below for context

buffer_queue_to_del = 'Ethernet112|6'
buffer_queues = ['Ethernet112|0-1', 'Ethernet112|2-4', 'Ethernet112|5', 'Ethernet112|6', 'Ethernet112|7', 'Ethernet116|0-1', ...]
buffer_queues_removed = 1
interface  = 'Ethernet68'
When the string 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68" and it picked as a candidate to delete it from BQ, which is wrong.

Summary:
Fixes # aristanetworks/sonic-qual.msft#371
@mssonicbld
Copy link
Collaborator

Cherry-pick PR to 202405: #16995

@mssonicbld
Copy link
Collaborator

Cherry-pick PR to 202411: #16996

mssonicbld pushed a commit that referenced this pull request Feb 17, 2025
Description of PR
The interface from where the queuestats fetched was different from the interface that was deleted from the BUFFER_QUEUE.

Github issue: aristanetworks/sonic-qual.msft#371
This issue is seen after PR: #15688

The issue was that
XML dump is below for context

buffer_queue_to_del = 'Ethernet112|6'
buffer_queues = ['Ethernet112|0-1', 'Ethernet112|2-4', 'Ethernet112|5', 'Ethernet112|6', 'Ethernet112|7', 'Ethernet116|0-1', ...]
buffer_queues_removed = 1
interface  = 'Ethernet68'
When the string 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68" and it picked as a candidate to delete it from BQ, which is wrong.

Summary:
Fixes # aristanetworks/sonic-qual.msft#371
mssonicbld pushed a commit that referenced this pull request Feb 17, 2025
Description of PR
The interface from where the queuestats fetched was different from the interface that was deleted from the BUFFER_QUEUE.

Github issue: aristanetworks/sonic-qual.msft#371
This issue is seen after PR: #15688

The issue was that
XML dump is below for context

buffer_queue_to_del = 'Ethernet112|6'
buffer_queues = ['Ethernet112|0-1', 'Ethernet112|2-4', 'Ethernet112|5', 'Ethernet112|6', 'Ethernet112|7', 'Ethernet116|0-1', ...]
buffer_queues_removed = 1
interface  = 'Ethernet68'
When the string 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68" and it picked as a candidate to delete it from BQ, which is wrong.

Summary:
Fixes # aristanetworks/sonic-qual.msft#371
wangxin pushed a commit to wangxin/sonic-mgmt that referenced this pull request Feb 21, 2025
Description of PR
The interface from where the queuestats fetched was different from the interface that was deleted from the BUFFER_QUEUE.

Github issue: aristanetworks/sonic-qual.msft#371
This issue is seen after PR: sonic-net#15688

The issue was that
XML dump is below for context

buffer_queue_to_del = 'Ethernet112|6'
buffer_queues = ['Ethernet112|0-1', 'Ethernet112|2-4', 'Ethernet112|5', 'Ethernet112|6', 'Ethernet112|7', 'Ethernet116|0-1', ...]
buffer_queues_removed = 1
interface  = 'Ethernet68'
When the string 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68" and it picked as a candidate to delete it from BQ, which is wrong.

Summary:
Fixes # aristanetworks/sonic-qual.msft#371
arlakshm pushed a commit that referenced this pull request Feb 26, 2025
#16687 recently merged to fix an issue on non-chassis systems but it broke chassis systems as described in #17131

This change will solve the issue originally targeted by #16687
Where 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68"

By using val == interface it no longer matters if the buffer queue matches up a substring of the interface.

Summary:
Fixes #17131
mssonicbld added a commit to mssonicbld/sonic-mgmt.msft that referenced this pull request Feb 26, 2025
sonic-net/sonic-mgmt#16687 recently merged to fix an issue on non-chassis systems but it broke chassis systems as described in sonic-net/sonic-mgmt#17131

This change will solve the issue originally targeted by sonic-net/sonic-mgmt#16687
Where 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68"

By using `val == interface` it no longer matters if the buffer queue matches up a substring of the interface.

Summary:
Fixes #17131

### Type of change

- [x] Bug fix
- [ ] Testbed and Framework(new/improvement)
- [ ] New Test case
    - [ ] Skipped for non-supported platforms
- [ ] Test case improvement

### Back port request
- [ ] 202012
- [ ] 202205
- [ ] 202305
- [ ] 202311
- [x] 202405
- [x] 202411

### Approach
#### What is the motivation for this PR?

#### How did you do it?

#### How did you verify/test it?

#### Any platform specific information?

#### Supported testbed topology if it's a new test case?

### Documentation
<!--
(If it's a new feature, new test case)
Did you update documentation/Wiki relevant to your implementation?
Link to the wiki page?
-->
mssonicbld added a commit to Azure/sonic-mgmt.msft that referenced this pull request Feb 26, 2025
sonic-net/sonic-mgmt#16687 recently merged to fix an issue on non-chassis systems but it broke chassis systems as described in sonic-net/sonic-mgmt#17131

This change will solve the issue originally targeted by sonic-net/sonic-mgmt#16687
Where 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68"

By using `val == interface` it no longer matters if the buffer queue matches up a substring of the interface.

Summary:
Fixes #17131

### Type of change

- [x] Bug fix
- [ ] Testbed and Framework(new/improvement)
- [ ] New Test case
 - [ ] Skipped for non-supported platforms
- [ ] Test case improvement

### Back port request
- [ ] 202012
- [ ] 202205
- [ ] 202305
- [ ] 202311
- [x] 202405
- [x] 202411

### Approach
#### What is the motivation for this PR?

#### How did you do it?

#### How did you verify/test it?

#### Any platform specific information?

#### Supported testbed topology if it's a new test case?

### Documentation
<!--
(If it's a new feature, new test case)
Did you update documentation/Wiki relevant to your implementation?
Link to the wiki page?
-->
nissampa pushed a commit to nissampa/sonic-mgmt_dpu_test that referenced this pull request Mar 4, 2025
sonic-net#16687 recently merged to fix an issue on non-chassis systems but it broke chassis systems as described in sonic-net#17131

This change will solve the issue originally targeted by sonic-net#16687
Where 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68"

By using val == interface it no longer matters if the buffer queue matches up a substring of the interface.

Summary:
Fixes sonic-net#17131
nnelluri-cisco pushed a commit to nnelluri-cisco/sonic-mgmt that referenced this pull request Mar 15, 2025
Description of PR
The interface from where the queuestats fetched was different from the interface that was deleted from the BUFFER_QUEUE.

Github issue: aristanetworks/sonic-qual.msft#371
This issue is seen after PR: sonic-net#15688

The issue was that
XML dump is below for context

buffer_queue_to_del = 'Ethernet112|6'
buffer_queues = ['Ethernet112|0-1', 'Ethernet112|2-4', 'Ethernet112|5', 'Ethernet112|6', 'Ethernet112|7', 'Ethernet116|0-1', ...]
buffer_queues_removed = 1
interface  = 'Ethernet68'
When the string 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68" and it picked as a candidate to delete it from BQ, which is wrong.

Summary:
Fixes # aristanetworks/sonic-qual.msft#371
nnelluri-cisco pushed a commit to nnelluri-cisco/sonic-mgmt that referenced this pull request Mar 15, 2025
sonic-net#16687 recently merged to fix an issue on non-chassis systems but it broke chassis systems as described in sonic-net#17131

This change will solve the issue originally targeted by sonic-net#16687
Where 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68"

By using val == interface it no longer matters if the buffer queue matches up a substring of the interface.

Summary:
Fixes sonic-net#17131
mssonicbld added a commit to mssonicbld/sonic-mgmt.msft that referenced this pull request Apr 18, 2025
sonic-net/sonic-mgmt#16687 recently merged to fix an issue on non-chassis systems but it broke chassis systems as described in sonic-net/sonic-mgmt#17131

This change will solve the issue originally targeted by sonic-net/sonic-mgmt#16687
Where 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68"

By using `val == interface` it no longer matters if the buffer queue matches up a substring of the interface.

Summary:
Fixes #17131

### Type of change

- [x] Bug fix
- [ ] Testbed and Framework(new/improvement)
- [ ] New Test case
    - [ ] Skipped for non-supported platforms
- [ ] Test case improvement

### Back port request
- [ ] 202012
- [ ] 202205
- [ ] 202305
- [ ] 202311
- [x] 202405
- [x] 202411

### Approach
#### What is the motivation for this PR?

#### How did you do it?

#### How did you verify/test it?

#### Any platform specific information?

#### Supported testbed topology if it's a new test case?

### Documentation
<!--
(If it's a new feature, new test case)
Did you update documentation/Wiki relevant to your implementation?
Link to the wiki page?
-->
mssonicbld added a commit to Azure/sonic-mgmt.msft that referenced this pull request Apr 18, 2025
…sis (#214)

sonic-net/sonic-mgmt#16687 recently merged to fix an issue on non-chassis systems but it broke chassis systems as described in sonic-net/sonic-mgmt#17131

This change will solve the issue originally targeted by sonic-net/sonic-mgmt#16687
Where 'Ethernet112|6' when split with delimiter "|" the string in 1st index "6" is a substring of "Ethernet68"

By using `val == interface` it no longer matters if the buffer queue matches up a substring of the interface.

Summary:
Fixes #17131

### Type of change

- [x] Bug fix
- [ ] Testbed and Framework(new/improvement)
- [ ] New Test case
 - [ ] Skipped for non-supported platforms
- [ ] Test case improvement

### Back port request
- [ ] 202012
- [ ] 202205
- [ ] 202305
- [ ] 202311
- [x] 202405
- [x] 202411

### Approach
#### What is the motivation for this PR?

#### How did you do it?

#### How did you verify/test it?

#### Any platform specific information?

#### Supported testbed topology if it's a new test case?

### Documentation
<!--
(If it's a new feature, new test case)
Did you update documentation/Wiki relevant to your implementation?
Link to the wiki page?
-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants