dev: Grpc.Net.Client throws System.Net.Http.HttpIOException
- Dominant language
- C#
- Stars
- 4.5k
- Forks
- 835
- Avg merge
- 6d 3h
- Merged PRs (30d)
- 7
Description
```
Unhandled exception. System.Net.Http.HttpIOException: The response ended prematurely while waiting for the next frame from the server. (ResponseEnded)
at System.Net.Http.Http2Connection.ThrowRequestAborted(Exception innerException)
at System.Net.Http.Http2Connection.Http2Stream.SendDataAsync(ReadOnlyMemory`1 buffer, CancellationToken cancellationToken)
at Grpc.Net.Client.Internal.StreamExtensions.WriteMessageAsync[TMessage](Stream stream, GrpcCall call, TMessage message, Action`2 serializer, CallOptions callOptions)
at Grpc.Net.Client.Internal.HttpContentClientStreamWriter`2.WriteAsyncCore[TState](Func`5 writeFunc, TState state, CancellationToken cancellationToken)
at Grpc.Net.Client.Internal.HttpContentClientStreamWriter`2.WriteCoreAsync(TRequest message, CancellationToken cancellationToken)
```
Should Grpc.Net.Client throw non-RPC errors?
Contributor guide
Research direction
Start with the stack trace through Grpc.Net.Client.Internal.StreamExtensions.WriteMessageAsync and HttpContentClientStreamWriter.WriteAsyncCore, then examine how System.Net.Http.HttpIOException is surfaced during HTTP/2 streaming. Done means the project has a decided, tested answer for whether this non-RPC error should be exposed or translated.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- api
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100