diff options
author | Amaury Denoyelle <adenoyelle@haproxy.com> | 2023-05-03 09:50:04 +0200 |
---|---|---|
committer | Amaury Denoyelle <adenoyelle@haproxy.com> | 2023-05-11 14:04:51 +0200 |
commit | 69670e88bddbaf60e3abbfaf7a151ce2e11b952f (patch) | |
tree | 48fa88bcb9211e8d2c3886f8a4df9987c776d3e5 | |
parent | 131f2d93e1f45cde30fa838cfe93b6056a999c8f (diff) | |
download | haproxy-69670e88bddbaf60e3abbfaf7a151ce2e11b952f.tar.gz |
BUG/MINOR: mux-quic: no need to subscribe for detach streams
When detach is conducted by stream endpoint layer, a stream is either
freed or just flagged as detached if the transfer is not yet finished.
In the latter case, the stream will be finally freed via
qc_purge_streams() which is called periodically.
A subscribe was done on quic-conn layer if a stream cannot be freed via
qc_purge_streams() as this means FIN STREAM has not yet been sent.
However, this is unnecessary as either HTX EOM was not yet received and
we are waiting for the upper layer, or FIN stream is still in the buffer
but was not yet transmitted due to an incomplete transfer, in which case
a subscribe should have already been done.
This should be backported up to 2.7.
-rw-r--r-- | src/mux_quic.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/src/mux_quic.c b/src/mux_quic.c index 259c7433f..fa4abf8e0 100644 --- a/src/mux_quic.c +++ b/src/mux_quic.c @@ -2091,9 +2091,6 @@ static int qc_purge_streams(struct qcc *qcc) release = 1; continue; } - - qcc->conn->xprt->subscribe(qcc->conn, qcc->conn->xprt_ctx, - SUB_RETRY_SEND, &qcc->wait_event); } } |