From: Aleksandar Lazic Date: Wed, 21 Oct 2026 20:25:34 +0000 (+0200) Subject: DOC: filters: channel_start_analyze is called again on L7 retries X-Git-Tag: v3.5-dev10~70 X-Git-Url: https://git.kaiwu.me/?a=commitdiff_plain;h=2bcf804b49dd941fb0078d09f7fff01cb4d530ad;p=haproxy.git DOC: filters: channel_start_analyze is called again on L7 retries The filters documentation says that the flt_start_analyze and flt_end_analyze analyzers are called only once per stream. On a L7 retry, the response analyzers are set again when the connection is established, so channel_start_analyze is called a second time on the response channel, without a channel_end_analyze call in between. It is preceded by an http_reset call on the response. Signed-off-by: Aleksandar Lazic --- diff --git a/doc/internals/api/filters.txt b/doc/internals/api/filters.txt index 87898b45d..a4aed16f0 100644 --- a/doc/internals/api/filters.txt +++ b/doc/internals/api/filters.txt @@ -1201,7 +1201,10 @@ has been added : processing. From the filter point of view, it calls the 'flt_ops.channel_end_analyze' callback. -These analyzers are called only once per streams. +These analyzers are called only once per stream, except on a L7 retry: the +response analyzers are set again when the connection is established, so +'flt_start_analyze' is called a second time on the response channel, after an +'http_reset' callback and without any 'flt_end_analyze' call in between. 'flt_ops.channel_start_analyze' and 'flt_ops.channel_end_analyze' callbacks can interrupt the stream processing, as 'flt_ops.channel_analyze'. Here is an