-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
Potential regression in DeadlineExceeded
error description
#5342
Comments
Have you tried with the latest (1.46) version, and is the behavior the same as with 1.40? |
Do you have an easy way to reproduce this? I tried modifying the TLS example here to specify a wrong server name and I see the following error:
And this is on |
This issue is labeled as requiring an update from the reporter, and no update has been received after 6 days. If no update is provided in the next 7 days, this issue will be automatically closed. |
I don't have a min repro, sorry! However, given the following:
I've filed an internal task to compile Thanos 0.22.0 with gRPC versions v1.40.0 and v1.42.0, with hopes of hitting the regression on v1.40.0, and maybe resolving the regression in v1.42.0. |
This issue is labeled as requiring an update from the reporter, and no update has been received after 6 days. If no update is provided in the next 7 days, this issue will be automatically closed. |
Hello, this is a follow-up of thanos-io/thanos#4923.
I believe there is a regression in error reporting in
picker_wrapper.go
, around:grpc-go/picker_wrapper.go
Line 109 in 462d867
Introduced between grpc-go versions
v1.39.0
andv1.40.0
.In good version
v1.39.0
, a TLS error during connection attempt shows more verbose information bubbled up to the user:While in borked version
v1.40.0
, only a generic error message is given:The middle bits missing in
v1.40.0
are:Which in this case, identifies a TLS hostname mismatch.
If this context were to disappear, as it did in
v1.40.0
, debugging becomes a lot more difficult to root causeDeadlineExceeded
.From digging through the code,
v1.39.0
's error message all havelatest balancer error
, meaning they take this code path:grpc-go/picker_wrapper.go
Lines 106 to 107 in 462d867
I don't know if changing the code path to hit line 109 is related to making the error message generic, but something happened such that the error message we get no longer contains the detailed information found in:
grpc-go/internal/transport/http2_client.go
Line 264 in 462d867
Could we bubble the error message in
http2_client.go#L264
all the way back up topicker_wrapper.go#L109
?Thanks!
The text was updated successfully, but these errors were encountered: