mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2026-05-04 20:46:11 +02:00
BUG/MEDIUM: stream-int: Process connection/CS errors during synchronous sends
If an error occurred on the connection or the conn-stream, no syncrhonous send is performed. If the error was not already processed and there is no more I/O, it will never be processed and the stream will never be notified of this error. This may block the stream until a timeout is reached or infinitly if there is no timeout. Concretly, this bug can be triggered time to time with h2spec, running the test "http2/5.1.1/2". This patch depends on the commit 328ed220a "BUG/MINOR: stream-int: Process connection/CS errors first in si_cs_send()". Both must be backported to 2.0 and probably to 1.9. In 1.9, the code is totally different, so this patch would have to be adapted.
This commit is contained in:
parent
328ed220a8
commit
e55a5a4171
@ -917,12 +917,6 @@ void si_sync_send(struct stream_interface *si)
|
||||
if (!cs)
|
||||
return;
|
||||
|
||||
if (cs->flags & (CS_FL_ERROR|CS_FL_ERR_PENDING))
|
||||
return;
|
||||
|
||||
if (cs->conn->flags & CO_FL_ERROR)
|
||||
return;
|
||||
|
||||
si_cs_send(cs);
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user