haproxy/src
Willy Tarreau f2943dccd0 MAJOR: session: detach the connections from the stream interfaces
We will need to be able to switch server connections on a session and
to keep idle connections. In order to achieve this, the preliminary
requirement is that the connections can survive the session and be
detached from them.

Right now they're still allocated at exactly the same place, so when
there is a session, there are always 2 connections. We could soon
improve on this by allocating the outgoing connection only during a
connect().

This current patch touches a lot of code and intentionally does not
change any functionnality. Performance tests show no regression (even
a very minor improvement). The doc has not yet been updated.
2012-10-26 20:15:20 +02:00
..
acl.c CLEANUP: remove trashlen 2012-10-26 20:04:27 +02:00
appsession.c CLEANUP: remove a few warning about unchecked return values in debug code 2012-04-30 11:56:30 +02:00
arg.c MEDIUM: sample: pass an empty list instead of a null for fetch args 2012-10-19 19:49:09 +02:00
auth.c CLEANUP: auth: make the code build again with DEBUG_AUTH 2012-05-10 23:25:35 +02:00
backend.c MAJOR: session: detach the connections from the stream interfaces 2012-10-26 20:15:20 +02:00
base64.c [MINOR] add encode/decode function for 30-bit integers from/to base64 2010-10-30 19:04:33 +02:00
buffer.c MAJOR: channel: replace the struct buffer with a pointer to a buffer 2012-10-13 09:07:52 +02:00
cfgparse.c CLEANUP: remove trashlen 2012-10-26 20:04:27 +02:00
channel.c OPTIM: channel: inline channel_forward's fast path 2012-10-26 01:08:01 +02:00
checks.c CLEANUP: remove trashlen 2012-10-26 20:04:27 +02:00
chunk.c MINOR: chunk: provide string compare functions 2012-10-19 15:18:06 +02:00
compression.c BUILD: fix coexistence of openssl and zlib 2012-10-26 15:07:59 +02:00
connection.c MAJOR: session: detach the connections from the stream interfaces 2012-10-26 20:15:20 +02:00
cttproxy.c CLEANUP: cttproxy: remove a warning on undeclared close() 2012-10-05 22:18:07 +02:00
dumpstats.c MAJOR: session: detach the connections from the stream interfaces 2012-10-26 20:15:20 +02:00
ev_epoll.c BUG/MINOR: epoll: correctly disable FD polling in fd_rem() 2012-10-04 22:26:09 +02:00
ev_kqueue.c MEDIUM: fd: add fd_poll_{recv,send} for use when explicit polling is required 2012-09-02 21:53:11 +02:00
ev_poll.c MEDIUM: fd: add fd_poll_{recv,send} for use when explicit polling is required 2012-09-02 21:53:11 +02:00
ev_select.c MEDIUM: fd: add fd_poll_{recv,send} for use when explicit polling is required 2012-09-02 21:53:11 +02:00
ev_sepoll.c CLEANUP: fdtab: flatten the struct and merge the spec struct with the rest 2012-09-03 20:49:14 +02:00
fd.c MAJOR: fd: replace all EV_FD_* macros with new fd_*_* inline calls 2012-09-02 21:53:11 +02:00
freq_ctr.c [MINOR] freq_ctr: add new types and functions for periods different from 1s 2010-08-10 14:01:09 +02:00
frontend.c MAJOR: session: detach the connections from the stream interfaces 2012-10-26 20:15:20 +02:00
haproxy.c MAJOR: session: detach the connections from the stream interfaces 2012-10-26 20:15:20 +02:00
hdr_idx.c OPTIM/MINOR: move the hdr_idx pools out of the proxy struct 2011-10-24 18:15:04 +02:00
i386-linux-vsys.c MEDIUM: listener: add support for linux's accept4() syscall 2012-10-08 20:11:03 +02:00
lb_chash.c [MEDIUM] hash: add support for an 'avalanche' hash-type 2010-11-29 07:28:16 +01:00
lb_fas.c CLEANUP: lb_first: add reference to a paper describing the original idea 2012-04-07 09:08:45 +02:00
lb_fwlc.c [MEDIUM] build: switch ebtree users to use new ebtree version 2009-10-26 21:10:04 +01:00
lb_fwrr.c [MEDIUM] build: switch ebtree users to use new ebtree version 2009-10-26 21:10:04 +01:00
lb_map.c [BUG] url_param hash may return a down server 2010-03-12 06:22:16 +01:00
listener.c MEDIUM: listener: provide a fallback for accept4() when not supported 2012-10-22 19:32:55 +02:00
log.c MAJOR: session: detach the connections from the stream interfaces 2012-10-26 20:15:20 +02:00
memory.c MEDIUM: memory: add the ability to poison memory at run time 2012-05-08 21:28:16 +02:00
peers.c MAJOR: session: detach the connections from the stream interfaces 2012-10-26 20:15:20 +02:00
pipe.c BUILD/MINOR: silent a build warning in src/pipe.c (fcntl) 2011-10-24 17:09:22 +02:00
proto_http.c MAJOR: session: detach the connections from the stream interfaces 2012-10-26 20:15:20 +02:00
proto_tcp.c MAJOR: session: detach the connections from the stream interfaces 2012-10-26 20:15:20 +02:00
proto_uxst.c MINOR: standard: make memprintf() support a NULL destination 2012-09-24 10:53:16 +02:00
protocol.c REORG: split "protocols" files into protocol and listener 2012-09-15 22:29:32 +02:00
proxy.c MEDIUM: proxy: add the global frontend to the list of normal proxies 2012-10-04 08:58:23 +02:00
queue.c BUG/MEDIUM: zero-weight servers must not dequeue requests from the backend 2012-01-20 16:18:53 +01:00
raw_sock.c MEDIUM: connection: it's not the data layer's role to validate the connection 2012-10-04 22:26:11 +02:00
rbtree.c [MINOR] imported the rbtree function from Linux kernel 2007-01-07 02:12:57 +01:00
regex.c [MINOR] prepare req_*/rsp_* to receive a condition 2010-01-28 18:10:50 +01:00
sample.c MINOR: sample: export 'sample_get_trash_chunk(void)' 2012-10-22 18:54:24 +02:00
server.c MEDIUM: server: move parsing of keyword "id" to server.c 2012-10-10 17:51:05 +02:00
session.c MAJOR: session: detach the connections from the stream interfaces 2012-10-26 20:15:20 +02:00
sessionhash.c [PATCH] appsessions: cleanup DEBUG_HASH and initialize request_counter 2008-08-13 23:43:26 +02:00
shctx.c BUILD: ssl: fix shctx build on older compilers 2012-10-18 19:03:00 +02:00
signal.c MINOR: signal: really ignore signals configured with no handler 2012-10-04 22:26:09 +02:00
ssl_sock.c MAJOR: session: detach the connections from the stream interfaces 2012-10-26 20:15:20 +02:00
standard.c OPTIM: tools: inline hex2i() 2012-10-26 01:13:24 +02:00
stick_table.c MINOR: sample: manage binary to string type convertion in stick-table and samples. 2012-10-22 18:54:15 +02:00
stream_interface.c MAJOR: session: detach the connections from the stream interfaces 2012-10-26 20:15:20 +02:00
task.c [OPTIM] task: don't scan the run queue if we know it's empty 2011-09-10 20:08:49 +02:00
time.c MINOR: Date and time fonctions that don't use snprintf 2012-02-09 17:03:28 +01:00
trace.c MINOR: add a new function call tracer for debugging purposes 2012-05-26 00:12:37 +02:00
uri_auth.c [REORG] http: move the http-request rules to proto_http 2011-03-13 22:00:24 +01:00