Output body buffer chain "flattening" doesn't work unless proxy buffering is off
Srebrenko Šehić
ssehic at gmail.com
Tue Jun 8 00:59:31 MSD 2010
On Mon, Jun 7, 2010 at 10:41 PM, Srebrenko Šehić <ssehic at gmail.com> wrote:
>> b->pos = b->last;
>
> I guess that should be done after the call to
> ngx_http_next_body_filter(r, in). I tried that, but it did not make
> any difference. It still "hangs" for payloads larger than 32KB.
I managed to figure it out myself. I set the b->pos = b->end during my
"traverse the chain and copy all buffers into one" for each buffer
that I copy. I just assumed that "old buffers" will be thrown away by
nginx as soon as I changed the input chain to the new buffer leaving
the old buffer dangling.
Anyways, thanks for the pointer Maxim. Highly appreciated.
Best regards,
Srebrenko
More information about the nginx-devel
mailing list