Mercurial > hg > nginx
changeset 7632:1d207b77b44a
Simplified subrequest finalization.
Now it looks similar to what it was before background subrequests were
introduced in 9552758a786e.
author | Roman Arutyunyan <arut@nginx.com> |
---|---|
date | Fri, 28 Feb 2020 19:54:13 +0300 |
parents | b4dbf8b98f9a |
children | ac52638cd269 |
files | src/http/ngx_http_request.c |
diffstat | 1 files changed, 12 insertions(+), 24 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/ngx_http_request.c Mon Mar 02 20:07:36 2020 +0300 +++ b/src/http/ngx_http_request.c Fri Feb 28 19:54:13 2020 +0300 @@ -2488,7 +2488,6 @@ } if (r != r->main) { - clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); if (r->buffered || r->postponed) { @@ -2499,8 +2498,14 @@ return; } - if (r->background) { + pr = r->parent; + + if (r == c->data || r->background) { + if (!r->logged) { + + clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); + if (clcf->log_subrequest) { ngx_http_log_request(r); } @@ -2514,31 +2519,14 @@ } r->done = 1; - ngx_http_finalize_connection(r); - return; - } - - pr = r->parent; - - if (r == c->data) { + + if (r->background) { + ngx_http_finalize_connection(r); + return; + } r->main->count--; - if (!r->logged) { - if (clcf->log_subrequest) { - ngx_http_log_request(r); - } - - r->logged = 1; - - } else { - ngx_log_error(NGX_LOG_ALERT, c->log, 0, - "subrequest: \"%V?%V\" logged again", - &r->uri, &r->args); - } - - r->done = 1; - if (pr->postponed && pr->postponed->request == r) { pr->postponed = pr->postponed->next; }