From dabeb5cbd51091dd065e8615e2ad0fb07c6382a4 Mon Sep 17 00:00:00 2001 From: Christopher Faulet Date: Tue, 1 Aug 2023 08:25:01 +0200 Subject: [PATCH] MEDIUM: stream: Reset response analyse expiration date if there is no analyzer When the stream expiration date is computed at the end of process_stream(), if there is no longer analyzer on the request channel, its analyse expiration date is reset. The same is now performed on the response channel. This way, we are sure to not inherit of an orphan expired date. This should prevent spinning loop on process_stream(). --- src/stream.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/stream.c b/src/stream.c index ef35b6e3c7..d3d029a5e7 100644 --- a/src/stream.c +++ b/src/stream.c @@ -2565,6 +2565,8 @@ struct task *process_stream(struct task *t, void *context, unsigned int state) if (!req->analysers) req->analyse_exp = TICK_ETERNITY; + if (!res->analysers) + res->analyse_exp = TICK_ETERNITY; if ((sess->fe->options & PR_O_CONTSTATS) && (s->flags & SF_BE_ASSIGNED) && (!tick_isset(req->analyse_exp) || tick_is_expired(req->analyse_exp, now_ms))) -- 2.47.3