Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Allow multiple routers to update route status
Previously, if multiple differently-named routers attempted to update their respective Ingress entries in a route status, one would go through, while the others would recieve conflict errors. The last-touched cache, designed to prevent fighting between two same-named routers (for example, on a rolling update), would get the route added with the zero-time, meaning that the router would not submit further updates for that route (and consequently that router would never set the proper status on the route). Now, conflicts no longer insert an entry into the last-touched cache. Instead, the code now properly updates the last-touched time, which prevents the fighting between instances of the same router while tolerating conflicts inbetween instances of different routers. Additionally, cache entries now expire after a period of time (the "contention period"), as originally intended.
- Loading branch information
1 parent
dbd0f56
commit d5cdfdb
Showing
2 changed files
with
195 additions
and
73 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters