Open ccascone opened 4 years ago
Unrelated issue: The switch_info
table lists nop
as action, but not as default action, which then will be NoAction
implicitly.
I suspect some error on Stratum with regards to default values in keyless tables. It seemed to work at first without any extra logic, but maybe that was a misconception.
23:18:04.727 WARN [P4RuntimeFlowRuleProgrammable] Table entry obtained from device device:leaf1 is different from one in in translation store: device=PiTableEntry{tableId=FabricEgress.pkt_io_egress.switch_info, matchKey=DEFAULT-ACTION, tableAction=NoAction(), priority=N/A, timeout=PERMANENT}, store=PiTableEntry{tableId=FabricEgress.pkt_io_egress.switch_info, matchKey=DEFAULT-ACTION, tableAction=FabricEgress.pkt_io_egress.set_cpu_port(cpu_port=0x140), priority=N/A, timeout=PERMANENT}
The issue was observed after reloading the fabric-tna pipeconf app in a running ONOS instance (production pod).
The ONOS core does not contain any flow for the
switch_info
table, which is weird. Seems like a bug with the ONOS translation store, and with fabric-tna pipeline initialization logic.