Le 14/06/2017 à 16:47, Willy Tarreau a écrit :
On Wed, Jun 14, 2017 at 03:43:19PM +0200, Christopher Faulet wrote:
A filter can choose to loop when a HTTP message is in the state
HTTP_MSG_ENDING. But the transaction is terminated with an error if the input is
closed (CF_SHUTR set on the channel). At this step, we have received all data,
so we can wait.
So now, we also check the parser state before leaving. This fix only affects
configs that use a filter that can wait in http_forward_data or http_end
callbacks, when all data were parsed.
Applied, thanks. Do you think this one could explain the abnormal "SD"
termination flags reported 2 weeks ago by Bernard McCormack ?
Hum, after a quick look, I don't think so. He doesn't use any filter
(like HTTP compression). So the HTTP parser cannot be in the
HTTP_MSG_ENDING state. But, I will check his issue more carefully to be
sure.
--
Christopher Faulet