haproxy/include/types
Willy Tarreau 2e99390faf BUG/MEDIUM: checks: fix slowstart behaviour when server tracking is in use
Ludovic Levesque reported and diagnosed an annoying bug. When a server is
configured to track another one and has a slowstart interval set, it's
assigned a minimal weight when the tracked server goes back up but keeps
this weight forever.

This is because the throttling during the warmup phase is only computed
in the health checking function.

After several attempts to resolve the issue, the only real solution is to
split the check processing task in two tasks, one for the checks and one
for the warmup. Each server with a slowstart setting has a warmum task
which is responsible for updating the server's weight after a down to up
transition. The task does not run in othe situations.

In the end, the fix is neither complex nor long and should be backported
to 1.4 since the issue was detected there first.
2011-10-31 11:53:20 +01:00
..
acl.h [MINOR] acl: add srv_conn acl to count connections on a 2011-08-06 15:52:27 +02:00
auth.h [REORG] http: move the http-request rules to proto_http 2011-03-13 22:00:24 +01:00
backend.h [MEDIUM] hash: add support for an 'avalanche' hash-type 2010-11-29 07:28:16 +01:00
buffers.h [MEDIUM] http: add support for "http-no-delay" 2011-05-30 18:42:41 +02:00
capture.h [MAJOR] last bunch of capture changes for mempool v2 2007-05-13 22:46:04 +02:00
checks.h [MINOR] Allow shutdown of sessions when a server becomes unavailable 2011-06-21 22:00:21 +02:00
counters.h [MINOR] stats: report the number of requests intercepted by the frontend 2011-09-10 23:32:41 +02:00
fd.h [MEDIUM] fd: merge fd_list into fdtab 2009-10-18 08:20:26 +02:00
freq_ctr.h [MINOR] freq_ctr: add new types and functions for periods different from 1s 2010-08-10 14:01:09 +02:00
global.h MEDIUM: tune.http.maxhdr makes it possible to configure the maximum number of HTTP headers 2011-10-24 19:14:41 +02:00
hdr_idx.h [BUG] files were missing for hdr_idx in previous commit 2006-12-04 02:20:02 +01:00
lb_chash.h [MEDIUM] build: switch ebtree users to use new ebtree version 2009-10-26 21:10:04 +01:00
lb_fwlc.h [MEDIUM] build: switch ebtree users to use new ebtree version 2009-10-26 21:10:04 +01:00
lb_fwrr.h [MEDIUM] build: switch ebtree users to use new ebtree version 2009-10-26 21:10:04 +01:00
lb_map.h [CLEANUP] proxy: move last lb-specific bits to their respective files 2009-10-03 18:41:18 +02:00
log.h [MEDIUM] IPv6 support for syslog 2011-03-28 18:45:15 +02:00
pattern.h [MEDIUM] IPv6 support for stick-tables 2011-03-29 01:09:14 +02:00
peers.h [MEDIUM] add internal support for IPv6 server addresses 2011-03-13 22:00:12 +01:00
pipe.h [MEDIUM] introduce pipe pools 2009-01-25 13:49:53 +01:00
port_range.h [MEDIUM] add support for binding to source port ranges during connect 2009-06-10 12:23:32 +02:00
proto_http.h MEDIUM: tune.http.maxhdr makes it possible to configure the maximum number of HTTP headers 2011-10-24 19:14:41 +02:00
proto_tcp.h [MINOR] session-counters: use "track-sc{1,2}" instead of "track-{fe,be}-counters" 2010-08-10 18:04:15 +02:00
protocols.h OPTIM/MINOR: move struct sockaddr_storage to the tail of structs 2011-10-23 19:08:46 +02:00
proxy.h OPTIM/MINOR: move the hdr_idx pools out of the proxy struct 2011-10-24 18:15:04 +02:00
queue.h [MAJOR] ported pendconn to mempools v2 2007-05-13 20:19:55 +02:00
server.h BUG/MEDIUM: checks: fix slowstart behaviour when server tracking is in use 2011-10-31 11:53:20 +01:00
session.h [MEDIUM] session: make session_shutdown() an independant function 2011-09-07 23:01:56 +02:00
signal.h [MEDIUM] signals: add support for registering functions and tasks 2010-08-27 18:00:40 +02:00
stick_table.h [MEDIUM] IPv6 support for stick-tables 2011-03-29 01:09:14 +02:00
stream_interface.h MINOR: remove the client/server side distinction in SI addresses 2011-09-23 10:54:59 +02:00
task.h [MEDIUM] signals: add support for registering functions and tasks 2010-08-27 18:00:40 +02:00
template.h [CLEANUP] included common/version.h everywhere 2006-06-29 18:54:54 +02:00