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

core: keep round_robin lb subchannel in TRANSIENT_FAILURE until becoming READY #6657

Merged

Conversation

voidzcy
Copy link
Contributor

@voidzcy voidzcy commented Jan 29, 2020

Avoid buffering RPCs when subchannel is CONNECTING after being TRANSIENT_FAILURE.

See #6650 for description of the issue. This PR fixes RR load balancer only.

@voidzcy voidzcy requested a review from ejona86 January 29, 2020 21:42
@zhangkun83 zhangkun83 removed their request for review January 30, 2020 21:15
@voidzcy voidzcy removed the request for review from ejona86 April 3, 2020 02:18
@voidzcy voidzcy changed the title core: keep round_robin lb subchannel in TRANSIENT_FAILURE until becoming READY core: keep round_robin lb in TRANSIENT_FAILURE until becoming READY Apr 3, 2020
@voidzcy voidzcy changed the title core: keep round_robin lb in TRANSIENT_FAILURE until becoming READY core: keep round_robin lb subchannel in TRANSIENT_FAILURE until becoming READY Apr 3, 2020
@voidzcy voidzcy requested a review from ejona86 April 3, 2020 22:40
@voidzcy voidzcy merged commit 8e9ceb5 into grpc:master Apr 6, 2020
dfawley pushed a commit to dfawley/grpc-java that referenced this pull request Jan 15, 2021
…ing READY (grpc#6657)

Make each subchannel created by RR stay in TRANSIENT_FAILURE state until READY. That is, each subchannel ignores consequent non-READY states after TRANSIENT_FAILURE.
zhangkun83 added a commit to zhangkun83/grpc-java that referenced this pull request Jan 15, 2021
…READY

If all RR servers are unhealthy, it's possible that at least one
connection is CONNECTING at every moment which causes RR to stay in
CONNECTING. It's better to keep the TRANSIENT_FAILURE state in that
case so that fail-fast RPCs can fail fast.

The same changes have been made for RoundRobinLoadBalancer in grpc#6657
zhangkun83 added a commit that referenced this pull request Jan 15, 2021
…READY (#7816)

If all RR servers are unhealthy, it's possible that at least one
connection is CONNECTING at every moment which causes RR to stay in
CONNECTING. It's better to keep the TRANSIENT_FAILURE state in that
case so that fail-fast RPCs can fail fast.

The same changes have been made for RoundRobinLoadBalancer in #6657
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jun 15, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants