You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The code assumes there is an equal number of multicast and unicast queues, but that is not the case for some platforms. TH4/TH5 based platforms will have 8 ucast and 4 mcast queues by default.
Code from above referenced file:
# The first half of queue id is for ucast, and second half is for mcast
# To simulate vendor OID, we wrap queues by max priority groups
port_max_queues = Namespace.dbs_get_all(self.db_conn, mibs.STATE_DB,
mibs.buffer_max_parm_table(self.oid_name_map[if_index]))['max_queues']
pq_count = math.ceil(int(port_max_queues) / 2)
Output of "max_queues" from BUFFER_MAX_PARM_TABLE referenced on TH4 based platform:
Since max_queues is 12 (8 ucast + 4 mcast), the code in ciscoSwitchQosMIB.py wraps on queue 6, and ends up only generating queue 1-6 as shown in the output above.
I am not sure if "max_priority_groups" could be used as a value to key on instead.
Steps to reproduce the issue:
Run sonic-mgmt/test_snmp_queue.py::test_snmp_queue.
Describe the results you received:
Test failure:
# Check if queue index in QUEUE table in config_db
# is present in SNMP result
if intf in q_interfaces:
for queue_idx in q_interfaces[intf]:
# queue_idx starts with 0, queue_idx in OID starts with 1
# Increment queue_idx by 1 to form the right OID.
snmp_q_idx = int(queue_idx) + 1
if str(snmp_q_idx) not in v['queues'][direction_type]:
pytest.fail("Expected queue index %d not present in \
SNMP result for interface %s" % (snmp_q_idx, v['name']))
Failed: Expected queue index 7 not present in SNMP result for interface fourhundredGigE1/1
Description
Observed that sonic-mgmt/test_snmp_queue.py::test_snmp_queue fails on Nokia-IXR7220-H4.
The mib that is being used is in:
https://github.com/sonic-net/sonic-snmpagent/blob/master/src/sonic_ax_impl/mibs/vendor/cisco/ciscoSwitchQosMIB.py
The code assumes there is an equal number of multicast and unicast queues, but that is not the case for some platforms. TH4/TH5 based platforms will have 8 ucast and 4 mcast queues by default.
Code from above referenced file:
Output of "max_queues" from BUFFER_MAX_PARM_TABLE referenced on TH4 based platform:
Since max_queues is 12 (8 ucast + 4 mcast), the code in ciscoSwitchQosMIB.py wraps on queue 6, and ends up only generating queue 1-6 as shown in the output above.
I am not sure if "max_priority_groups" could be used as a value to key on instead.
Steps to reproduce the issue:
Run sonic-mgmt/test_snmp_queue.py::test_snmp_queue.
Describe the results you received:
Test failure:
Can also be seen with the following snmp command:
Describe the results you expected:
Expected to see queues 1-8 in SNMP MIB. (MIB output above shows only 1-6 (second to the last digit in object).
Additional information:
The text was updated successfully, but these errors were encountered: