[PATCH]Upstream: fix possible request hang when "proxy_buffering" is off.

Maxim Dounin mdounin at mdounin.ru
Wed Jun 25 18:12:33 UTC 2014


Hello!

On Wed, Jun 25, 2014 at 10:00:35PM +0800, flygoast wrote:

> At here:
> in ngx_http_write_filter():
> 
> 
>     if (limit
>         && c->write->ready
>         && c->sent - sent >= limit - (off_t) (2 * ngx_pagesize))
>     {
>         c->write->delayed = 1;
>         ngx_add_timer(c->write, 1);
>     }
> 
> 
> limit's value from clcf->sendfile_max_chunk. In my nginx.conf, I set "sendfile_max_chunk 8k;". I attached a debug log for this situation in last mail.

Well, so the problem happens with sendfile_max_chunk set lower 
than proxy_buffer_size.  While I don't think that 
sendfile_max_chunk 8k is practical, it probably worth fixing.

I don't think that suggested patch is right
though - it will not prevent infinite stall of transfering a big 
enough data chunk, as timer set by write filter will be removed.

-- 
Maxim Dounin
http://nginx.org/



More information about the nginx-devel mailing list