Hello gRPC friends,

I've got a question about the behavior of streams in the face of 
communication errors - particularly bidi streams, and particularly in 
Golang.

If one party A does a stream.Send() call and that returns an error, does 
this mean that party B's stream.Recv() call will also return (some, but not 
io.EOF) error? If so, does it also mean that subsequent calls by A to 
stream.Recv() and by B to stream.Send() will return errors? In other words, 
does any communication error mean that the stream is dead, cannot be used 
for any operations on it by either side, and that the remote side will also 
find out that the stream has not been closed properly by the other side?

And if the answer to all of the above is yes, I'm curious if all this holds 
even in the case of a one way network partition - packets being allowed to 
flow only in one direction. Generally, any guidance on error handling with 
bidi streams would be appreciated; I didn't find much documentation on the 
subject.

Thanks a lot,

- Andrei

-- 
You received this message because you are subscribed to the Google Groups 
"grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/grpc-io.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/grpc-io/22f1d81a-0260-468e-921e-27e88d244949%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to