On 1/7/26 3:24 PM, Lucas Vargas Dias via dev wrote:
> Em qua., 7 de jan. de 2026 às 10:52, Dumitru Ceara <[email protected]>
> escreveu:
> 
>> On 1/7/26 1:51 PM, Lucas Vargas Dias wrote:
>>> I try ovn-appctl -t ovn-northd inc-engine/recompute and it doesn't fix
>> the
>>> route learning
>>> I try ovn-appctl -t ovn-controller inc-engine/recompute in the
>>> ovn-chassis-4, also
>>>
>>
>> Oh, I see now, ovn-controller actually has a chance to learn on both
>> router ports before it sees the dynamic-routing-port-name option (which
>> is set later in this case).
>>
>> All routes it learns afterwards will only be learned on rp-public.
>> However, the ones it already learned before the option was set it
>> never cleans up.
>>
>> The problem is in the sb_sync_learned_routes() function:
>>
>>     struct sbrec_learned_route *filter =
>>
>> sbrec_learned_route_index_init_row(sbrec_learned_route_by_datapath);
>>     sbrec_learned_route_index_set_datapath(filter, datapath);
>>     SBREC_LEARNED_ROUTE_FOR_EACH_EQUAL (sb_route, filter,
>>                                         sbrec_learned_route_by_datapath) {
>>         /* If the port is not local we don't care about it.
>>          * Some other ovn-controller will handle it.
>>          * We may not use smap_get since the value might be validly NULL.
>> */
>>         if (!smap_get_node(bound_ports,
>>                            sb_route->logical_port->logical_port)) {
>>             continue;     <<<< at this point bound_ports only contains
>> rp-public
>>         }
>>         route_add_entry(&sync_routes, sb_route, true);
>>     }
>>     sbrec_learned_route_index_destroy_row(filter);
>>
>>
>> So we never add the old route we learned for ts1001-dcx1 to 'sync_routes'.
>> This means the old route will never be flushed.
>>
>> I guess we need to add another check here that also adds 'sb_route' to
>> 'sync_routes' if its logical_port is bound locally.
>>
>> Later in the function, ovn-controller will then flush it out, because it
>> will become stale.
>>
>> Lucas, would you have time to work on a fix for this by any chance?
>> Otherwise, I'll open an issue to try to fix it on our side in the near
>> future.
>>
>>
> Hi,
> 
> I have time to work on this fix.
> 

Thanks a lot, looking forward to the patch!

Regards,
Dumitru

> Regards,
> Lucas
> 

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to