-
Notifications
You must be signed in to change notification settings - Fork 3.9k
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
Fix retries that timeout hanging forever. #10855
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it possible to add a test to cover this case?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Turns out that due to mocks it is difficult.
boolean cancelled = retryFuture.cancel(false); | ||
if (cancelled) { | ||
inFlightSubStreams.decrementAndGet(); | ||
} | ||
} | ||
if (hedgingFuture != null) { | ||
hedgingFuture.cancel(false); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it looks hedging also has the same problem.
A UT would be really helpful in either retry or hedging cases.
50fbd32
to
3130739
Compare
…#10884) * Fix retries that timeout hanging forever. (grpc#10855) Fixes grpc#10336
This reverts commit c0a9d31.
Fixes #10336
Thanks to @turchenkoalex for identifying the underlying problem and fix.