]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MAJOR: http: fix stats regression consecutive to HTTP_RULE_RES_YIELD
authorWilly Tarreau <w@1wt.eu>
Tue, 10 Mar 2015 14:25:54 +0000 (15:25 +0100)
committerWilly Tarreau <w@1wt.eu>
Tue, 10 Mar 2015 14:33:55 +0000 (15:33 +0100)
Commit bc4c1ac ("MEDIUM: http/tcp: permit to resume http and tcp custom actions")
unfortunately broke the stats applet by moving the clearing of the analyser bit
after processing the applet headers. It used to work only in HTTP/1.1 and not
in HTTP/1.0. This is 1.6-specific, no backport is needed.

src/proto_http.c

index f8ad754b10800f9a1f619bc64fc2cf1747260d83..f0f4cba49cedaebffbbb9fa44d0e0c6b79d8e8a9 100644 (file)
@@ -6337,8 +6337,11 @@ int http_process_res_common(struct session *s, struct channel *rep, int an_bit,
        /* The stats applet needs to adjust the Connection header but we don't
         * apply any filter there.
         */
-       if (unlikely(objt_applet(s->target) == &http_stats_applet))
+       if (unlikely(objt_applet(s->target) == &http_stats_applet)) {
+               rep->analysers &= ~an_bit;
+               rep->analyse_exp = TICK_ETERNITY;
                goto skip_filters;
+       }
 
        /*
         * We will have to evaluate the filters.