Commit Graph

22455 Commits

Author SHA1 Message Date
willy tarreau
746e26b180 * added the ability to enforce limits on memory usage. 2006-03-25 20:33:22 +01:00
willy tarreau
1a3442daee * added the 'source' load-balancing algorithm which uses the source IP(v4|v6) 2006-03-25 20:33:17 +01:00
willy tarreau
b8d29e4361 * some regression test files for active/backup conditions. 2006-03-25 20:33:14 +01:00
willy tarreau
4c8c2b5f08 * re-architectured the server round-robin mechanism to ease integration of
other algorithms. It now relies on the number of active and backup servers.
2006-03-25 20:33:10 +01:00
willy tarreau
62084d4f2d * added a counter for the number of active and backup servers, and report
these numbers upon SIGHUP or state change.
2006-03-25 20:33:07 +01:00
willy tarreau
bfad574854 Released 1.2.10.1 2006-03-23 14:19:11 +01:00
willy tarreau
72e583d030 While fixing the backup server round-robin "feature", a new bug was introduced
which could miss some backup servers.
2006-03-23 11:27:02 +01:00
willy tarreau
1fb3493492 * The displayed proxy name was wrong when dumping upon SIGHUP. 2006-03-23 11:22:10 +01:00
willy tarreau
aaff30e62e Updated CHANGELOG for v1.2.10 2006-03-19 21:30:41 +01:00
willy tarreau
e114bf94a3 cleaned the 'tar' target and allowed the 'clean' target to remove the tar.gz file. 2006-03-19 21:30:14 +01:00
willy tarreau
cee272fff4 Added the 'tar' target to build the tar.gz archive directly from git. 2006-03-19 21:16:26 +01:00
willy tarreau
d8b1fa5269 Released version 1.2.10 2006-03-19 21:01:07 +01:00
willy tarreau
d38e72d567 Separated OpenBSD build from the main Makefile into a new one. 2006-03-19 20:56:52 +01:00
willy tarreau
fd6e535154 provided a patch to enable epoll on RHEL3 kernels. 2006-03-19 20:13:37 +01:00
willy tarreau
fd6dfe7c76 Fixed some messages to ease parsing of alerts. 2006-03-19 19:38:19 +01:00
willy tarreau
25424f8558 Make health-checks be more regular, and faster to retry after a timeout. 2006-03-19 19:37:48 +01:00
willy tarreau
c2becdc403 Limit the number of consecutive accept() in multi-process mode.
This produces a more evenly distributed load across the processes and slightly
improves performance by reducing bottlenecks.
2006-03-19 19:36:48 +01:00
willy tarreau
05be12bb20 Make fd management more robust and easier to debug. Also some micro-optimisations. 2006-03-19 19:35:00 +01:00
willy tarreau
3c407cd544 ENORMOUS long standing bug affecting the epoll polling system.
event_data is a union, not a structure !
2006-03-19 19:33:33 +01:00
willy tarreau
779dc897e7 assert.h is needed when DEBUG is defined. 2006-03-19 19:32:29 +01:00
willy tarreau
e4c2e10a98 fixed haproxy.spec to build correctly on RHEL3 2006-03-15 20:47:25 +01:00
willy tarreau
50be0170d1 Updated version to 1.2.9 2006-03-15 19:41:19 +01:00
willy tarreau
b6da47990b New .spec for RHEL from DAG 2006-03-15 19:41:10 +01:00
Willy TARREAU
2bfdd8e26a * haproxy could not be stopped after being paused. 2006-03-12 18:03:05 +01:00
Willy TARREAU
dd676173f0 * automatically deduce ulimit-n from maxsock 2006-03-12 18:01:33 +01:00
Willy TARREAU
203b0b624f * account for the sockets needed for listeners and checks
during computation of maximum number of sockets.
2006-03-12 18:00:28 +01:00
Willy TARREAU
13032e769e * added the ability to enforce a maximum number of connections at compile time via SYSTEM_MAXCONN. 2006-03-12 17:49:02 +01:00
willy tarreau
b5669e94ae * implemented support for multi-line headers as required by RFC2616. 2006-03-02 16:50:45 +01:00
Willy TARREAU
3759f98d44 * health checks sent to servers configured with identical intervals
were sent in perfect synchronisation because the initial time was
  the same for all. This could induce high load peaks when fragile
  servers were hosting tens of instances for the same application.
  Now the load is spread evenly across the smallest interval amongst
  a listener.
2006-03-01 22:44:17 +01:00
Willy TARREAU
767ba71444 * the default 'httpclose' option only sets the 'Connection:' headers
to 'close', but does not actually close any connection. The problem
  is, there are some servers which don't close the connection even if
  the proxy tells them 'Connection: close'. A workaround was added by
  the way of a new option 'forceclose' (which implies 'httpclose'),
  and which makes the proxy close the outgoing channel to the server
  once it has sent all its headers. Just don't use this with the
  'CONNECT' method of course !
2006-03-01 22:40:50 +01:00
Willy TARREAU
3481c46368 * there was a bug in the way the backup servers were handled. They
were erroneously load-balanced while the doc said the opposite.
  Since load-balanced backup servers is one of the features some
  people have been asking for, the problem was fixed to reflect the
  documented behaviour and a new option 'allbackups' was introduced
  to provide the feature to those who need it.
2006-03-01 22:37:57 +01:00
Willy TARREAU
b45124729a * some commented out debug code was not usable. This is fixed. 2006-03-01 22:34:48 +01:00
Willy TARREAU
1cec83c754 * a never ending connect() could lead to a fast select() loop if
its timeout times the number of retransmits exceeded the server
  read or write timeout, because the later was used to compute
  select()'s timeout while the connection timeout was not reached.
2006-03-01 22:33:49 +01:00
Willy TARREAU
c9a643998f * fixed some tv_cmp_ms() computations. Strictly speaking, there was
a very short window of 1 microsecond every millisecond during which
  two events were not considered as 1 ms apart from each other.
2006-03-01 22:30:20 +01:00
Willy TARREAU
a9e75f6eff * now we initialize the libc's localtime structures very early so
that even under OOM conditions, we can still send dated error
  messages without segfaulting.
2006-03-01 22:27:48 +01:00
Willy TARREAU
e3283d1cd3 * daemon mode must imply 'quiet' and disable 'verbose' as
stdout/stderr file descriptors are closed.
2006-03-01 22:15:29 +01:00
Willy TARREAU
edb12df477 * Added a 'haproxy.bsd' entry to fix openbsd build 2006-01-29 23:19:04 +01:00
willy tarreau
726618c761 * fixed a few missing dates 2006-01-29 22:42:06 +01:00
willy tarreau
065f1c0798 * bumped version to 1.2.8 and updated CHANGELOG accordingly 2006-01-29 22:10:07 +01:00
willy tarreau
39df2dc8fc * fixed version references in documentation 2006-01-29 21:56:05 +01:00
willy tarreau
cb2e562ad7 * recent change for pause/play mode broke compilation due to sockaddr_storage. 2006-01-29 21:55:30 +01:00
willy tarreau
22739efb4a * Documentation about the hot-reconfiguration mechanism. 2006-01-29 21:40:41 +01:00
willy tarreau
808b4e6f61 * do not respect the grace time when switching from PAUSED to STOPPED state. 2006-01-29 21:39:33 +01:00
willy tarreau
dbd3befae8 * changed PR_STDISABLED for PR_STPAUSED
* added a pause/play mechanism which can be triggered by SIGTTOU/SIGTTIN
2006-01-29 21:39:05 +01:00
willy tarreau
9970d5cf80 * fixed odd addresses in tests/defaults.cfg 2006-01-08 01:51:58 +01:00
Willy TARREAU
e78ae269fe * fixed a nasty bug in epoll_loop() and poll_loop() by which an EPOLL_HUP event
could trigger both a read and a write calls, thus sometimes inducing headers
  being directly sent from srv to cli without modification, and leading further
  modification to crash the process by memory corruption, because
  rep.data+rep.l<rep.h so the memmove() length argument is negative. Only
  observed with epoll() and never poll(), though this one should have been
  affected too. Now, only call functions which have been allowed to.
2006-01-08 01:24:12 +01:00
willy tarreau
11a4606c8b * updated displayed version to 1.2.7.1. 2005-12-18 01:43:47 +01:00
willy tarreau
a4a583ac05 * TCP health-checks don't detect a connection refused with poll/epoll
because event_srv_chk_r() is called before _w() and flushes the socket
  error. The result is that the server remains UP. The problem only
  affects pure TCP health-checks when select() is disabled. You may
  encounter this on SSL or SMTP proxies.
2005-12-18 01:39:19 +01:00
willy tarreau
48b06594b9 * The 'retries' option was not used because the connect() could not return
an error if the connection was refused before the the timeout. So the
  client was sent to the server anyway and then got its connection broken
  because of the write error. This is not a real problem with persistence,
  but it definitely is for new clients. This stupid bug must have been
  present for years !
2005-12-18 01:37:12 +01:00
willy tarreau
a56eca75f5 * released 1.2.7 2005-12-18 01:34:42 +01:00