On Tue, Feb 14, 2023 at 01:05:36PM +0100, Claudio Jeker wrote:
> bgpd does not really synchronize the start of sessions with
> the config reload of the RDE. This is fine but there is one gotcha.
> When loading big configs including RTR tables the delay between the SE
> finishing the config reload (RECONF_DONE) and the RDE finally getting
> RECONF_DONE is so long that on startup many sessions come up manage to
> feed data to the RDE before the initial config gets active.  This is not
> great.
> 
> So this diff tries to reduce this window a bit by
> a) issue RECONF_DONE for the RTR and RDE together (there is no dependecy
> between the two and the ROA/ASPA reloads can happen on the side).
> b) introduce a small timeout before bringing new sessions up.
> 
> For the second diff I had to fix a bug in the neighbor state handler which
> has been there for a long time. The "reinit due?" case only triggers when
> init_peer() also triggers and so this code makes no sense and can simply
> be removed. We should never restart a session because of a config reload.

This all makes sense, as usual.

ok tb

Reply via email to