-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
finagle-core: Treat failures consistently when resolving & binding un…
…ion paths Problem: The name resolver ignores failures when resolving unions whereas the name binder treats a single failure as terminal. This inconsistency is dangerous - if a single resolution in a union flaps between successful and failed, the entire serverset will be emptied out leading to 100% failure. For example, with the path (/a & /b), if /b flaps into a failed binding state, the overall resolution will flap into failed and the serverset will empty out. Solution: Both name resolution and binding should filter out failures when building a union. In the example above, if /b flaps to a failed binding, the union will resolve to just /a. Differential Revision: https://phabricator.twitter.biz/D315282
- Loading branch information
Todd Segal
authored and
jenkins
committed
May 16, 2019
1 parent
a7dae7e
commit 2fde4d2
Showing
3 changed files
with
7 additions
and
5 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
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