On September 29, 2019 2:13:00 PM GMT+02:00, Christoph <cm@appliedprivacy.net> wrote:
This means there are events that take 6 s, possibly postponing other events. May cause problems if you would run some protocols configured with tight timers (e.g. OSPF set to 5 s dead interval).
This is probably kernel table sync. Do you export full BGP to kernel? Is this on BSD?
Yes this is on a system doing fulltable BGP exports to kernel on FreeBSD 12 (BIRD 2.0.6).
Is there anything that we can change in the configuration to mitigate this issue or should we just ignore it? Or is this a bug in BIRD 2?
BIRD reads the kernel table on FreeBSD in one syscall which fills a huge array with all routes at once. (Is there any better choice?) This syscall eats several seconds uninterruptibly. The reading is needed as BIRD checks that the kernel table matches the BIRD table. The solution for this will be multithreaded execution which is currently being developed (for more reasons than BSD route sync). Then one thread could wait for the kernel export without blocking whole the now-singlethreaded daemon. Maria