grpc-java icon indicating copy to clipboard operation
grpc-java copied to clipboard

binder: ServerCall.Listener.onComplete() is called prematurely when transport not ready

Open jdcormie opened this issue 1 year ago • 0 comments

Both SingleMessageServerStream and MultiMessageServerStream implement close() by asking Outbound to enqueue the status and trailers for sending, then calling Inbound#onCloseSent(). This method always calls ServerStreamListener.closed() even though the status and trailers may still be sitting in the Outbound queue due to transport-level flow control.

jdcormie avatar Jan 30 '24 20:01 jdcormie