Files | Admin

Notes:

Release Name: 3.1.0

Notes:
Unicorn is an HTTP server for Rack applications designed to only serve
fast clients on low-latency, high-bandwidth connections and take
advantage of features in Unix/Unix-like kernels.  Slow clients should
only be served by placing a reverse proxy capable of fully buffering
both the the request and response in between Unicorn and slow clients.

* http://unicorn.bogomips.org/
* mongrel-unicorn@rubyforge.org
* git://git.bogomips.org/unicorn.git

Changes:

This release enables tuning the client_buffer_body_size to raise
or lower the threshold for buffering request bodies to disk.
This only applies to users who have not disabled rewindable
input.  There is also a TeeInput bugfix for uncommon usage
patterns and Configurator examples in the FAQ should be fixed



Changes: GIT-VERSION-GEN | 2 +- lib/unicorn/configurator.rb | 27 +++++--- lib/unicorn/const.rb | 7 +- lib/unicorn/http_server.rb | 8 ++ lib/unicorn/tee_input.rb | 20 +++++- t/rack-input-tests.ru | 21 ++++++ t/t0015-configurator-internals.sh | 25 +++++++ t/t0100-rack-input-tests.sh | 124 ++++++++++++++++++++++++++++++++++++ t/t0116-client_body_buffer_size.sh | 80 +++++++++++++++++++++++ t/t0116.ru | 16 +++++ 10 files changed, 312 insertions(+), 18 deletions(-) commit 39f264173717287eda70910e7a24fbafd21a4a7e Author: Eric Wong Date: Fri Dec 10 05:45:14 2010 +0800 unicorn 3.1.0 - client_buffer_body_size tuning This release enables tuning the client_buffer_body_size to raise or lower the threshold for buffering request bodies to disk. This only applies to users who have not disabled rewindable input. There is also a TeeInput bugfix for uncommon usage patterns and Configurator examples in the FAQ should be fixed commit 71716672752e573ff15002aaefd6e8ba8c6b6cb6 Author: Eric Wong Date: Thu Dec 9 03:39:03 2010 +0000 allow client_buffer_body_size to be tuned Since modern machines have more memory these days and clients are sending more data, avoiding potentially slow filesystem operations for larger uploads can be useful for some applications. commit 9d80b009a3cb795530ad23263f4eb525880e79dc Author: Eric Wong Date: Wed Dec 8 23:53:25 2010 +0000 configurator: ensure examples in FAQ still work This has been broken since 2.0.x Internal cleanups sometimes have unintended consequences :< commit 3b2fc62dadd3c90038c168849b33c4ca6df058da Author: Eric Wong Date: Wed Dec 8 22:02:45 2010 +0000 tee_input: fix accounting error on corked requests In case a request sends the header and buffer as one packet, TeeInput relying on accounting info from StreamInput is harmful as StreamInput will buffer in memory outside of TeeInput's control. This bug is triggered by calling env["rack.input"].size or env["rack.input"].rewind before to read.