sonic-net / sonic-platform-daemons

Platform module daemons for SONiC
Other
25 stars 159 forks source link

chassisd is pushing incorrect number of ASICs for linecards to CHASSIS_STAGE_DB #559

Open vivekverma-arista opened 1 week ago

vivekverma-arista commented 1 week ago
admin@nfc420:~$ sonic-db-cli CHASSIS_STATE_DB keys CHASSIS_MODULE_TABLE*
CHASSIS_MODULE_TABLE|LINE-CARD6
CHASSIS_MODULE_TABLE|LINE-CARD8
CHASSIS_MODULE_TABLE|LINE-CARD7
admin@nfc420:~$ sonic-db-cli CHASSIS_STATE_DB hgetall "CHASSIS_MODULE_TABLE|LINE-CARD6"
{'slot': '7', 'hostname': 'nfc420-7', 'num_asics': '0'}
admin@nfc420:~$ sonic-db-cli CHASSIS_STATE_DB hgetall "CHASSIS_MODULE_TABLE|LINE-CARD7"
{'slot': '8', 'hostname': 'nfc420-8', 'num_asics': '0'}
admin@nfc420:~$ sonic-db-cli CHASSIS_STATE_DB hgetall "CHASSIS_MODULE_TABLE|LINE-CARD8"
{'slot': '9', 'hostname': 'nfc420-9', 'num_asics': '0'}

Although these are linecards with one ASIC each.

There is a bug in this script where a variable defined inside a loop is being accessed outside of it. https://github.com/sonic-net/sonic-platform-daemons/blob/master/sonic-chassisd/scripts/chassisd#L361

arlakshm commented 1 week ago

Can you also create Test gap in the sonic-mgmt to catch this issue