On Sun, Sep 16, 2007 at 10:35:42PM +0200, Adrian Perez de Castro wrote:
El Sun, 16 Sep 2007 22:14:14 +0400
Igor Sysoev <is-G...@public.gmane.org> escribi??:
On Sun, Sep 16, 2007 at 08:08:09PM +0200, Manlio Perillo wrote:
Igor Sysoev ha scritto:
On Sun, Sep 16, 2007 at 07:36:49PM +0200, Manlio Perillo wrote:
I need to send to the client some data in chunks. [...]
Ok, thanks.
[...]
I have also found the real problem: one of the call to
ngx_http_output_filter fails with a return value -2.
Now I have to found the problem...
It's NGX_AGAIN.
If you have got all your data ready you may send them at once in one
chain. But if you are getting then gradually, then after NGX_AGAIN
you should set event handlers and timer and return control to nginx.
Mmmh, this affects me as well in the fancyindex module. When doing
subrequests for header inclusion the call to ngx_http_output_filter
returns NGX_AGAIN. I have just assumed NGX_AGAIN does not need extra
work, and the rest of the data I send goes to the client...
So I suppose I am making the worker process block too much, isn't it?
I can only send all data in one chain when not using header/footer
(they are subrequests), so I think it will be better to fix my code :D
In your case, when you subrequest local files you can treat NGX_AGIAN
as NGX_OK. If you subrequest remote sites, then you need some handling
of this subrequests.