Skip to content

HTTP/3: Uninformative message when HTTP/3 connection fails #70949

@JamesNK

Description

@JamesNK

Description

I'm trying to get HTTP/3 setup on a remote computer. It isn't working and the error message provided isn't useful to help me fix it.

Error message:

Requesting HTTP version 3.0 with version policy RequestVersionExact while unable to establish HTTP/3 connection.

Stack trace:

[04:27:35.530] 0 0: Error message: Grpc.Core.RpcException: Status(StatusCode="Internal", Detail="Error starting gRPC call. HttpRequestException: Requesting HTTP version 3.0 with version policy RequestVersionExact while unable to establish HTTP/3 connection.", DebugException="System.Net.Http.HttpRequestException: Requesting HTTP version 3.0 with version policy RequestVersionExact while unable to establish HTTP/3 connection.
   at System.Net.Http.HttpConnectionPool.ThrowGetVersionException(HttpRequestMessage request, Int32 desiredVersion)
   at System.Net.Http.HttpConnectionPool.TrySendUsingHttp3Async(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
   at System.Net.Http.DiagnosticsHandler.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at Grpc.Net.Client.Balancer.Internal.BalancerHttpHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) in /tmp/benchmarks-agent/benchmarks-server-1/bztvffi2.2p2/grpc-dotnet/src/Grpc.Net.Client/Balancer/Internal/BalancerHttpHandler.cs:line 136
   at Grpc.Net.Client.Internal.GrpcCall`2.RunCall(HttpRequestMessage request, Nullable`1 timeout) in /tmp/benchmarks-agent/benchmarks-server-1/bztvffi2.2p2/grpc-dotnet/src/Grpc.Net.Client/Internal/GrpcCall.cs:line 643")
   at GrpcClient.Program.UnaryCall(CancellationTokenSource cts, Int32 connectionId, Int32 streamId) in /tmp/benchmarks-agent/benchmarks-server-1/bztvffi2.2p2/grpc-dotnet/perf/benchmarkapps/GrpcClient/Program.cs:line 703

Reproduction Steps

I haven't figured out why this breaks on the remote computer and works locally yet. I'm not sure why the error message is thrown. I'll try setting up an event source next...

Expected behavior

The error message says why the HTTP/3 connection can't be established.

Actual behavior

"Requesting HTTP version 3.0 with version policy RequestVersionExact while unable to establish HTTP/3 connection."

🤷‍♂️

Regression?

No response

Known Workarounds

No response

Configuration

.NET 7 daily build.

Other information

No response

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions