haproxy/include/proto
Willy Tarreau 62c3be28ed BUG/MEDIUM: correctly disable servers tracking another disabled servers.
In a config where server "s1" is marked disabled and "s2" tracks "s1",
s2 appears disabled on the stats but is still inserted into the LB farm
because the tracking is resolved too late in the configuration process.

We now resolve tracked servers before building LB maps and we also mark
the tracking server in maintenance mode, which previously was not done,
causing half of the issue.

Last point is that we also protect srv_is_usable() against electing a
server marked for maintenance. This is not absolutely needed but is a
safe choice and makes a lot of sense.

This fix must be backported to 1.4.
2012-01-20 16:18:30 +01:00
..
acl.h MINOR: acl: include pattern.h to make pattern migration more transparent 2011-12-30 17:33:25 +01:00
auth.h [REORG] http: move the http-request rules to proto_http 2011-03-13 22:00:24 +01:00
backend.h BUG/MEDIUM: correctly disable servers tracking another disabled servers. 2012-01-20 16:18:30 +01:00
buffers.h CLEANUP: kill buffer_replace() and use an inline instead 2011-11-28 21:01:28 +01:00
checks.h [MEDIUM] add a maintenance mode to servers 2010-01-31 23:33:18 +01:00
cttproxy.h [MEDIUM] check for cttproxy support when required 2007-03-24 17:24:39 +01:00
dumpstats.h [MINOR] More flexible clearing of stick table 2011-06-17 11:39:29 +02:00
fd.h [MEDIUM] Fix memory freeing at exit 2008-05-30 07:07:19 +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
frontend.h [MINOR] frontend: add a make_proxy_line function 2011-03-20 10:15:22 +01:00
hdr_idx.h OPTIM/MINOR: move the hdr_idx pools out of the proxy struct 2011-10-24 18:15:04 +02:00
lb_chash.h [MEDIUM] backend: implement consistent hashing variation 2009-10-09 07:17:58 +02:00
lb_fwlc.h [CLEANUP] backend: move LB algos to individual files 2009-10-01 11:19:37 +02:00
lb_fwrr.h [CLEANUP] backend: move LB algos to individual files 2009-10-01 11:19:37 +02:00
lb_map.h [MINOR] lb_map: reorder code in order to ease integration of new hash functions 2009-10-01 21:11:15 +02:00
log.h [BUILD] add format(printf) to printf-like functions 2009-04-03 12:01:47 +02:00
pattern.h MINOR: pattern: export the global temporary pattern 2011-12-30 17:33:25 +01:00
peers.h [CLEANUP] peers.h: fix declarations 2011-06-18 20:27:19 +02: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: http: add support for sending the server's name in the outgoing request 2012-01-05 15:17:31 +01:00
proto_tcp.h MINOR: remove the client/server side distinction in SI addresses 2011-09-23 10:54:59 +02:00
proto_uxst.h [MEDIUM] separate protocol-level accept() from the frontend's 2010-06-14 10:53:11 +02:00
protocols.h [MINOR] listeners: add support for queueing resource limited listeners 2011-07-24 22:03:52 +02:00
proxy.h [MEDIUM] stats: add the ability to enable/disable/shutdown a frontend at runtime 2011-09-07 22:50:52 +02:00
queue.h [BUG] do not dequeue the backend's pending connections on a dead server 2008-12-07 23:51:12 +01:00
server.h [OPTIM] counters: move some max numbers to the counters struct 2009-10-04 23:26:19 +02:00
session.h [MEDIUM] session: make session_shutdown() an independant function 2011-09-07 23:01:56 +02:00
signal.h [MEDIUM] signals: support redistribution of signal zero when stopping 2010-08-27 18:26:11 +02:00
stick_table.h [MEDIUM] Create updates tree on stick table to manage sync. 2010-11-11 09:29:08 +01:00
stream_interface.h [MAJOR] session: remove the ->srv pointer from struct session 2011-03-10 23:32:17 +01:00
stream_sock.h [MEDIUM] backend: initialize the server stream_interface upon connect() 2010-06-14 10:53:15 +02:00
task.h [MAJOR] proxy: finally get rid of maintain_proxies() 2011-07-25 16:33:49 +02:00
template.h [CLEANUP] included common/version.h everywhere 2006-06-29 18:54:54 +02:00