Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

grpc-js: Fix exitIdle propagation and DNS IP result backoff #2037

Conversation

murgatroid99
Copy link
Member

This should fix #2031. The main issue was the code in load-balancer-child-handler.ts: it's just a copy/paste error, and the result is that calls to exitIdle would not be propagated to child LB policies. That meant that when a new call tried to kick an IDLE LB policy, it would not happen, and it would only eventually leave IDLE when it got a new address list from the resolver. This problem was exacerbated by the missing backoff.reset call in dns-resolver.ts. The backoff is meant to wait an increasing amount of time after each failure, but because it was not reset there it would also wait an increasing amount of time after each successful IP address resolution.

@murgatroid99 murgatroid99 merged commit 703971f into grpc:@grpc/grpc-js@1.5.x Jan 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants