diff --git a/patches/nginx-1.0.11-upstream_pipelining.patch b/patches/nginx-1.0.11-upstream_pipelining.patch new file mode 100644 index 0000000..33f2b84 --- /dev/null +++ b/patches/nginx-1.0.11-upstream_pipelining.patch @@ -0,0 +1,33 @@ +diff -ur nginx-1.0.11/src/http/ngx_http_upstream.c nginx-1.0.11-patched/src/http/ngx_http_upstream.c +--- nginx-1.0.11/src/http/ngx_http_upstream.c 2011-12-14 02:34:34.000000000 +0800 ++++ nginx-1.0.11-patched/src/http/ngx_http_upstream.c 2012-03-21 21:20:17.333111806 +0800 +@@ -1385,6 +1385,8 @@ + + /* rc == NGX_OK */ + ++ u->request_all_sent = 1; ++ + if (c->tcp_nopush == NGX_TCP_NOPUSH_SET) { + if (ngx_tcp_push(c->fd) == NGX_ERROR) { + ngx_log_error(NGX_LOG_CRIT, c->log, ngx_socket_errno, +@@ -1451,7 +1453,7 @@ + + #endif + +- if (u->header_sent) { ++ if (u->request_all_sent) { + u->write_event_handler = ngx_http_upstream_dummy_handler; + + (void) ngx_handle_write_event(c->write, 0); +Only in nginx-1.0.11-patched/src/http: ngx_http_upstream.c~ +diff -ur nginx-1.0.11/src/http/ngx_http_upstream.h nginx-1.0.11-patched/src/http/ngx_http_upstream.h +--- nginx-1.0.11/src/http/ngx_http_upstream.h 2011-11-01 22:18:10.000000000 +0800 ++++ nginx-1.0.11-patched/src/http/ngx_http_upstream.h 2012-03-21 21:18:21.041237173 +0800 +@@ -313,6 +313,7 @@ + unsigned buffering:1; + + unsigned request_sent:1; ++ unsigned request_all_sent:1; + unsigned header_sent:1; + }; +