Re: Gzip Gunzip: always flush busy bufs when the incoming chain is NULL.

2014-11-10 Thread Yichun Zhang (agentzh)
Hello! On Wed, Nov 5, 2014 at 5:08 PM, Yichun Zhang (agentzh) wrote: Sorry again, it actually checked c-buffered NGX_HTTP_LOWLEVEL_BUFFERED. This condition is indeed too strong and I've made it check its own busy bufs instead. Hmm, the problem here is more complicated than I originally

Re: Gzip Gunzip: always flush busy bufs when the incoming chain is NULL.

2014-11-05 Thread Maxim Dounin
Hello! On Tue, Nov 04, 2014 at 12:42:56PM -0800, Yichun Zhang (agentzh) wrote: Hello! On Mon, Nov 3, 2014 at 4:54 PM, Maxim Dounin wrote: The commit log in question explains the reason for the change. Work on the gzip stalls problem as fixed by 973fded4f461 clearly showed that just

Re: Gzip Gunzip: always flush busy bufs when the incoming chain is NULL.

2014-11-05 Thread Yichun Zhang (agentzh)
Hello! On Wed, Nov 5, 2014 at 7:41 AM, Maxim Dounin wrote: The questions are: - How it happened that all content handler's buffers are busy, while there are no busy buffers in gzip? Sorry, I was wrong in this part. The content handler actually checked the r-buffered flag instead of

Re: Gzip Gunzip: always flush busy bufs when the incoming chain is NULL.

2014-11-05 Thread Yichun Zhang (agentzh)
Hello! On Wed, Nov 5, 2014 at 5:02 PM, Yichun Zhang (agentzh) wrote: Sorry, I was wrong in this part. The content handler actually checked the r-buffered flag instead of checking its own busy bufs. Sorry again, it actually checked c-buffered NGX_HTTP_LOWLEVEL_BUFFERED. This condition is

Re: Gzip Gunzip: always flush busy bufs when the incoming chain is NULL.

2014-11-04 Thread Yichun Zhang (agentzh)
Hello! On Mon, Nov 3, 2014 at 4:54 PM, Maxim Dounin wrote: The commit log in question explains the reason for the change. Work on the gzip stalls problem as fixed by 973fded4f461 clearly showed that just passing NULL chains is wrong unless last buffer was already sent or there are busy

Re: Gzip Gunzip: always flush busy bufs when the incoming chain is NULL.

2014-11-03 Thread Maxim Dounin
dff86e2246a53b0f4a61935cd5c8c0a0f66d0ca2 Gzip Gunzip: always flush busy bufs when the incoming chain is NULL. After the system send buffer is full, NULL incoming chains are used to flush pending output upon new write events. The current gzip and gunzip filters may intercept NULL chains and keep the data stalling

Gzip Gunzip: always flush busy bufs when the incoming chain is NULL.

2014-10-31 Thread Yichun Zhang (agentzh)
# HG changeset patch # User Yichun Zhang agen...@gmail.com # Date 1414804249 25200 # Fri Oct 31 18:10:49 2014 -0700 # Node ID 38a74e59f199edafad0a8caae5cfc921ab3302e8 # Parent dff86e2246a53b0f4a61935cd5c8c0a0f66d0ca2 Gzip Gunzip: always flush busy bufs when the incoming chain is NULL. After