Nginx reload causing dropped requests

Hi,

I’m seeing dropped requests on nginx reload. I’m using 0.8.53 compiled
from
source.

My configuration is nginx as a proxy in front of (currently) 2 apache
servers.

It looks like if a client reuses a connection it had before the reload
(HTTP/1.1 style), then the server doesn’t handle the request - from
tcpdump,
I see the TCP connection is just reset with no response.

Is this a known issue? Is there some configuration option to stop the
old
worker processes from dieing until the connections have all timed out?

Cheers,
Mike

Apologies - having looked closer I see the bug is with my python test
client

  • python’s httplib doesn’t notice nginx has closed the connection - it’s
    up
    to the application code to retry in this case.

Cheers,
Mike

Ive seen this happen too. Ive always accepted it as something that
happens
and not a bug. But yeah its an annoyance when you have a dynamically
configured server.

Ive seen it happen with google chrome a bit after reload (
net::ERR_EMPTY_RESPONSE)

On Fri, Jan 21, 2011 at 02:11:39PM +1100, SplitIce wrote:

Ive seen it happen with google chrome a bit after reload (
net::ERR_EMPTY_RESPONSE)

How do you do reload ? Using -HUP signal ?

I see the TCP connection is just reset with no response.
nginx mailing list
[email protected]
nginx Info Page


nginx mailing list
[email protected]
nginx Info Page

http://sysoev.ru

On Thu, Jan 20, 2011 at 05:45:21PM -0800, Mike Bell wrote:

I see the TCP connection is just reset with no response.

Is this a known issue? Is there some configuration option to stop the old
worker processes from dieing until the connections have all timed out?

While reload (HUP signal) nginx closes only idle keepalive connections.


Igor S.
http://sysoev.ru/en/

Yep HUP via /etc/init.d/nginx reload . If I could reproduce it I would,
Ive
only seen it in chrome so it may be chrome incorrectly handling
keepalive
closure or something.