-
The sender side does this:
But the receiver side may not receive all data, not even QUIC_STREAM_EVENT_PEER_SEND_SHUTDOWN. It seems that ConnectionShutdown somehow forcibly cancels sending and QUIC_STREAM_EVENT_SHUTDOWN_COMPLETE does not guarantee what previously send to be finished? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 5 replies
-
Just because one side received stream shutdown complete doesn't mean the peer has processed all the received data. It only means the peer transport stack has received and queued it. You should either let the connection shut down based on idle timeout (this is what HTTP does) or you need to have some explicit signal at the application layer. |
Beta Was this translation helpful? Give feedback.
A connection shutdown throws away any streams, which throws away any queued data.