Error handling from filter modules
mdounin at mdounin.ru
Fri Oct 16 12:22:57 UTC 2015
On Fri, Oct 16, 2015 at 03:16:23PM +0300, Roman Arutyunyan wrote:
> > So the question is do filters have to manually call
> > ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); or is it
> > expected that the upper layers should actually do the right thing and
> > ensure the client doesn't get a bad response generated from the current
> > state of r with no indication an error occurred?
> Calling ngx_http_finalize_request() is the most correct way to return an
> error from a filter handler. It does some additional cleanup, which can
> make sense in certain cases.
Huh? The ngx_http_finalize_request() shouldn't be called from
filters at all, this will cause incorrect reference counting and
a segmentation fault as a most likely result.
More information about the nginx-devel