zebra: Fix removal of routes on MetaQ when client goes down #16494
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
It is possible that right before an upper level protocol dies or is killed routes would be installed into zebra. These routes could be on the Meta-Q for early route-processing. Leaving us with a situation where the client is removed, and all it's routes that are in the rib at that time, and then after that the MetaQ is run and the routes are reprocessed leaving routes from an upper level daemon post daemon going away from zebra's perspective. These routes will be abandoned.