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

[VRF]Fixing vrf orch to update state_db when evpn nvo arrives late #41

Closed
wants to merge 1 commit into from

Conversation

dgsudharsan
Copy link
Owner

What I did
Update state_db VRF_OBJECT table when there is update flow in the Vrf.
Since there is no EVPN nvo the addOperation returns here without updating state_db

https://github.com/sonic-net/sonic-swss/blob/2e6c5b209d575f73b867de9f3e56b3be4066acec/orchagent/vrforch.cpp#L114

However later when evpn nvo arrives there is no subsequent update operation.

This will result in removal message not getting processed due to the check in vrfmgrd

https://github.com/sonic-net/sonic-swss/blob/a821af0421de316555146615cffd4108ec566e20/cfgmgr/vrfmgr.cpp#L208

May  4 03:37:49.578686 r-anaconda-51 INFO swss#orchagent: :- updateVrfVNIMap: VRF 'Vrf1' vni 500200 old_vni 0
May  4 03:37:49.578701 r-anaconda-51 NOTICE swss#orchagent: :- updateVrfVNIMap: updateVrfVNIMap unable to find EVPN VTEP
May  4 03:37:49.578999 r-anaconda-51 INFO swss#orchagent: :- addOperation: VRF 'Vrf1' vni 500200 modify
May  4 03:37:49.579009 r-anaconda-51 INFO swss#orchagent: :- updateVrfVNIMap: VRF 'Vrf1' vni 500200 old_vni 0
May  4 03:37:49.579009 r-anaconda-51 INFO swss#orchagent: :- updateVrfVNIMap: addL3VniStatus vni 500200 vlan 0
May  4 03:37:49.579028 r-anaconda-51 INFO swss#orchagent: :- updateVrfVNIMap: VRF 'Vrf1' vni 500200 map update
May  4 03:37:49.579081 r-anaconda-51 NOTICE swss#orchagent: :- addOperation: VRF 'Vrf1' was updated

Why I did it
The update is missed when VRF is created and vni is set on the VRF but EVPN nvo arrives late.

How I verified it
Added UT to verify the flow

Details if related

@dgsudharsan dgsudharsan closed this May 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants