Skip to content

Serialize the HTTP/1.1 statschannel requests

The statschannel truncated test still terminates abruptly sometimes and it doesn't return the answer for the first query. This might happen when the second process_request() discovers there's not enough space before the sending is complete and the connection is terminated before the client gets the data.

Change the isc_http, so it pauses the reading when it receives the data and resumes it only after the sending has completed or there's incomplete request waiting for more data.

This makes the request processing slightly less efficient, but also less taxing for the server, because previously all requests that has been received via single TCP read would be processed in the loop and the sends would be queued after the read callback has processed a full buffer.

Closes #3270 (closed)

Edited by Ondřej Surý

Merge request reports