Upstream module usage to process data

Maxim Dounin mdounin at
Wed May 31 12:53:10 UTC 2017


On Wed, May 31, 2017 at 08:22:07AM -0400, isolomka wrote:

> Does upstream works correctly with thread pool enabled?

Yes, it does.

> I see some strange validation in ngx_http_upstream_init_request()
>     if (r->aio) {
>         return;
>     }
> that flag is set when thread pool is enabled.

The flag indicates that an aio operation (or thread operation) is 
in progress.  In ngx_http_upstream_init_request() it means that 
reading of cache file header is currently in progress, and not yet 
complete.  The flag will be cleared once reading is complete.

Note that if you are trying to use thread pools in your own code, 
it might be tricky to do it correctly, especially if you are 
trying to do so from an input filter (likely won't be possible).

Maxim Dounin

More information about the nginx mailing list