[PATCH]Upstream: fix possible request hang when "proxy_buffering" is off.
flygoast at 126.com
Thu Jun 26 03:10:53 UTC 2014
You're right. It still can hang. I have another question:
What's the meaning for "c->sent - sent >= limit - (off_t) (2 * ngx_pagesize))"?
I don't understand it. Why "2 * ngx_pagesize"? Can you help to explain the logic?
At 2014-06-26 02:12:33,"Maxim Dounin" <mdounin at mdounin.ru> wrote:
>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.
>nginx-devel mailing list
>nginx-devel at nginx.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the nginx-devel