Welcome! Log In Create A New Profile

Advanced

Re: In memory subrequest hang if backend return 500

Maxim Dounin
March 21, 2012 04:56AM
Hello!

On Wed, Mar 21, 2012 at 10:53:45AM +0800, Abioy Sun wrote:

> Hi All,
>
> In the file ngx_http_upstream.c I found some code like this:
>
> 1618 if (u->headers_in.status_n > NGX_HTTP_SPECIAL_RESPONSE) {
> 1619
> 1620 if (r->subrequest_in_memory) {
> 1621 u->buffer.last = u->buffer.pos;
> 1622 }
>
> that means, if the status backend return if greater than 300, the first
> part of the body would be abandoned. Will this cause the issue that the
> main request won't be woken again and keep sleeping until timeout? Or did I
> misunderstand anything?

Do you use keepalive connections to backends?

As far as I see, this may indeed cause problems with keepalive
connections, though should be ok in non-keepalive case.

Maxim Dounin

_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
Subject Author Posted

In memory subrequest hang if backend return 500

abioy March 20, 2012 10:54PM

Re: In memory subrequest hang if backend return 500

Maxim Dounin March 21, 2012 04:56AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 149
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready