haproxy/src
Krzysztof Piotr Oledzki 144a3d3016 [BUG] Flush buffers also where there are exactly 0 bytes left
I noticed it was possible to get truncated http/csv stats. Sometimes.
Usually the problem disappeared as fast as it appeared, but once it
happend that my http-stats page was truncated for about one hour.
It was quite weird as it happened independently for csv and http
output and it took me some time to track & fix this bug.

Both buffer_write & buffer_write_chunk used to return 0 in two
situations: is case of success or where there was exactly 0 bytes
left. The first one is intentional but I believe the second one
is not as it was not possible to distinguish between successful
write and unsuccessful one, which means that if the buffer was 100%
filled, it was never flushed and it was not possible to write
more data.

This patch fixes this problem.
2008-05-25 14:39:08 +02:00
..
acl.c [MEDIUM] restrict the set of allowed characters for identifiers 2007-12-02 18:45:09 +01:00
appsession.c [MAJOR] remove files distributed under an obscure license 2007-09-09 21:56:53 +02:00
backend.c [BUILD] fix build of POST analysis code with gcc < 3 2008-04-19 21:24:56 +02:00
base64.c [CLEANUP] included common/version.h everywhere 2006-06-29 18:54:54 +02:00
buffers.c [BUG] Flush buffers also where there are exactly 0 bytes left 2008-05-25 14:39:08 +02:00
cfgparse.c [MAJOR] implementation of the "leastconn" load balancing algorithm 2008-03-10 22:04:30 +01:00
checks.c [MEDIUM]: Prevent redispatcher from selecting the same server, version #3 2008-03-04 06:16:37 +01:00
client.c [MAJOR] implement parameter hashing for POST requests 2008-04-15 15:30:41 +02:00
cttproxy.c [MEDIUM] check for cttproxy support when required 2007-03-24 17:24:39 +01:00
dumpstats.c [BUG] Flush buffers also where there are exactly 0 bytes left 2008-05-25 14:39:08 +02:00
eb32tree.c [MINOR] merge ebtree version 3.0 2007-11-28 14:20:44 +01:00
eb64tree.c [MINOR] merge ebtree version 3.0 2007-11-28 14:20:44 +01:00
ebpttree.c [MINOR] merge ebtree version 3.0 2007-11-28 14:20:44 +01:00
ebtree.c [MINOR] merge ebtree version 3.0 2007-11-28 14:20:44 +01:00
ev_epoll.c [OPTIM] GCC4's builtin_expect() is suboptimal 2008-02-14 23:14:33 +01:00
ev_kqueue.c [MEDIUM] limit the number of events returned by *poll* 2007-06-03 17:16:49 +02:00
ev_poll.c [MAJOR] implement parameter hashing for POST requests 2008-04-15 15:30:41 +02:00
ev_select.c [MINOR] allow null timeouts for past events in select 2007-05-14 03:16:06 +02:00
ev_sepoll.c [BUG] fix truncated responses with sepoll 2008-01-18 17:20:13 +01:00
fd.c [MAJOR] auto-registering of pollers at load time 2007-04-16 00:25:25 +02:00
haproxy.c [RELEASE] Released version 1.3.15 2008-04-19 21:25:12 +02:00
hdr_idx.c [MAJOR] huge rework of the HTTP request FSM 2007-01-21 19:16:41 +01:00
log.c [BUG] log response byte count, not request 2008-01-18 11:16:32 +01:00
memory.c [BUG] fix segfault at exit when using captures 2007-06-16 23:19:53 +02:00
proto_http.c [MAJOR] implement parameter hashing for POST requests 2008-04-15 15:30:41 +02:00
proto_tcp.c [BUG] fix truncated responses with sepoll 2008-01-18 17:20:13 +01:00
proto_uxst.c [MEDIUM] fix stats socket limitation to 16 kB 2008-03-17 22:08:01 +01:00
protocols.c [MINOR] add a generic unbind_all_listeners() primitive 2007-11-04 22:42:49 +01:00
proxy.c [MEDIUM] Implement "track [<backend>/]<server>" 2008-02-27 10:39:53 +01:00
queue.c [MEDIUM] implement the slowstart parameter for servers 2007-11-30 17:42:05 +01:00
rbtree.c [MINOR] imported the rbtree function from Linux kernel 2007-01-07 02:12:57 +01:00
regex.c [CLEANUP] shut warnings 'is*' macros from ctype.h on solaris 2007-06-17 21:51:38 +02:00
senddata.c [MEDIUM] moved stats and buffer generic functions to new files 2007-10-18 14:12:21 +02:00
server.c [MEDIUM]: rework checks handling 2008-01-22 11:29:06 +01:00
session.c [OPTIM] small optimization on session_process_counters() 2007-11-26 20:22:47 +01:00
sessionhash.c [BUG] fix segfault on exit in new appsession code 2007-10-15 20:08:16 +02:00
standard.c [BUG] str2sun could leak a small buffer in case of error during parsing 2008-03-07 10:07:04 +01:00
stream_sock.c [BUG] fix truncated responses with sepoll 2008-01-18 17:20:13 +01:00
task.c [OPTIM] GCC4's builtin_expect() is suboptimal 2008-02-14 23:14:33 +01:00
time.c [BUILD] fix 2 minor issues on AIX 2007-11-30 18:38:35 +01:00
uri_auth.c [MINOR] report haproxy's version by default on the stats page 2007-10-15 10:05:11 +02:00