Hello,
I have a client to server stream defined as
rpc ClientStream(stream Request) returns (Response);
Both server and client are implemented in C++. The client sends a number of requests to the server, which may then close the stream based on some condition. When doing so, the server calls Finish() on ServerAsyncReader and sends the result.
However, this result is never received on the client, since ClientAsyncReader provides no interface or callback to determine that the server closed the stream. Also, the completion queue does not return ok = false on the Write() operation. So in this case, my client just keeps on sending data to the server, although nobody is listening anymore.
What is the suggested way to detect server-side stream termination?
Best regards,
Norman Link