Skip to content

Received unexpected EOS on DATA frame from server #5944

@nwbirnie

Description

@nwbirnie

When response trailers are quite large (likely around 1MB of trailers) we receive an internal error from gRPC rather than the original trailers.

This is affecting Google Ads users - who are unable to debug their failed requests, see googleads/google-ads-java/issues/100.

The error is generated in Http2ClientStreamTransportState where it appears that the EOS flag is set while still receiving data.

Is it possible that this is a race condition where the server has already sent the response and closed the stream before the client finishes receiving the headers, data and trailers? I suppose that could happen if the response is sent in several packets, and Http2ClientStreamTransportState is running at the packet level, rather than message level?

What version of gRPC are you using?

v1.21.0

What did you expect to see?

Response trailers which contain a detailed failure message.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions