-
Notifications
You must be signed in to change notification settings - Fork 3.9k
Closed
Milestone
Description
There's been hangs when using gRPC-LB with round_robin and I think I tracked the source down.
gRPC-LB has a timer in case communicating with gRPC-LB takes "too long," to avoid hanging. If it takes too long it swaps to fallback addresses. But the code that handles empty addresses doesn't cause an error if there are no addresses and usingFallbackBackends == true
.
It'd make sense for this bug to lurk, as I believe all previously deployed usages of gRPC-LB have fallback addresses.
Note that pick-first could suffer a similar issue, but it is a separate code path and so will need to be checked/fixed independently.
I think the fix for round_robin will be an easy one-line change.
See also b/176914523#comment45