Stream message delivery guarantees

127 views
Skip to first unread message

Edvard Fagerholm

unread,
Oct 20, 2023, 11:58:22 AM10/20/23
to grpc.io
Hi,

I'm wondering if the following is possible the way gRPC streams are implemented. Assume that we have a server-side stream and the server keeps writing data into the stream, so payloads:

A, B, C, D, E, ...

Is it possible for the client to receive a sequence like:

A, B, D, E, ...

i.e. with one payload missing without the server side code throwing an exception or signaling an error? I'm fine with fire and forget when writing on the server side into a stream if one of the following always happen:

1. The stream can suddenly stop sending, fail and eventually close.
2. The stream can drop a payload, but would signal that with an exception or inform a callback.

However, silently dropping anything on the floor would be problematic.

Best,
Edvard

sanjay...@google.com

unread,
Oct 20, 2023, 12:49:27 PM10/20/23
to grpc.io
On Friday, October 20, 2023 at 8:58:22 AM UTC-7 Edvard Fagerholm wrote:
..
However, silently dropping anything on the floor would be problematic.


"gRPC guarantees message ordering within an individual RPC call."
 

Best,
Edvard
Reply all
Reply to author
Forward
0 new messages