Route auto correction is not happening when spoke moves from one cluster member to another and the new cluster member starts receiving the route from the spoke.
edge:Edge-1-1-2:~# debug.py --routes 61.0.0.1 0
Address Netmask Type Gateway Next Hop Name Next Hop ID Destination Name Dst LogicalId Reachable Metric Preference Flags Vlan Intf Sub IntfId MTU SEG
61.0.0.0 255.255.255.0 edge2edge any Spoke c204775d-98ec-47bb-a54e-b0a50884bd84 Spoke c204775d-98ec-47bb-a54e-b0a50884bd84 True 0 999 DSBR 1 any N/A 1500 0
61.0.0.0 255.255.255.0 any 10.0.1.5 N/A N/A N/A N/A True 0 1000000 SB 1 br-network1 N/A N/A 0
P - PG, B - BGP, D - DCE, L - LAN SR, C - Connected, O - External, W - WAN SR, S - SecureEligible, R - Remote, s - self, r - recursive, H - HA, m - Management, n - nonVelocloud, v - ViaVeloCloud, A - RouterAdvertisement, c - CWS, a - RAS, M - MTGRE, g - Global PG Static
Spoke edge connected to a cluster and same route is advertised via BGP to spoke and all cluster members.
Issue is tracked under issue #149885
Root cause analysis: With gateways running on 5.4, routes from spokes would be advertised to all the hubs irrespective of spoke-hub association exists or not. Due to this the route from the spoke would be advertised to all the members of the cluster and would be present in the remote routes table. When there is cluster member reassignment, gateway would not send the routes of spoke to the new cluster member again and since the trigger for auto correction happens either during BGP underlay route learning or overlay routes receiving path, this would end up not triggering the auto-correction.
Fix will be available in 6.1.0.0
Workaround: Run route reinit on the cluster member connected to the spoke.