Skip to content

Conversation

@kannanjgithub
Copy link
Contributor

Backport of #12289 to v1.75.x.

Since c4256ad we no longer fabricate a TRANSIENT_FAILURE update from children. However, previously that would have set
seenReadyOrIdleSinceTransientFailure = false and prevented future timer creation. If a LB policy gives extraneous updates with state CONNECTING, then it was possible to re-create failOverTimer which would then wait the 10 seconds for the child to finish CONNECTING. We only want to give the child one opportunity after transitioning out of READY/IDLE.

grpc/proposal#509

…#12289)

Since c4256ad we no longer fabricate a TRANSIENT_FAILURE update from
children. However, previously that would have set
seenReadyOrIdleSinceTransientFailure = false and prevented future timer
creation. If a LB policy gives extraneous updates with state CONNECTING,
then it was possible to re-create failOverTimer which would then wait
the 10 seconds for the child to finish CONNECTING. We only want to give
the child one opportunity after transitioning out of READY/IDLE.

grpc/proposal#509
@ejona86 ejona86 merged commit 653d076 into grpc:v1.75.x Aug 19, 2025
20 of 21 checks passed
@ejona86 ejona86 deleted the backport-1.75-priority-dup-connecting branch August 19, 2025 14:15
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.

3 participants