Client abort detection w/ upstream broken on anything but kqueue ()?

Maxim Dounin mdounin at mdounin.ru
Wed Nov 3 21:34:29 MSK 2010


Hello!

On Wed, Nov 03, 2010 at 12:21:47PM +0100, Marcello Barnaba wrote:

[...]

> (gdb) x/37b buf
> 0x7fff5fbff06f:	0x15 0x03 0x01 0x00 0x20 0x5f 0x01 0x61
> 0x7fff5fbff077:	0x9d 0x83 0xa8 0x74 0xaa 0xcc 0xf6 0x78
> 0x7fff5fbff07f:	0x81 0x42 0x98 0x20 0x08 0xe3 0x66 0x21
> 0x7fff5fbff087:	0x52 0x3a 0xca 0xe2 0x08 0xac 0x98 0xcf
> 0x7fff5fbff08f:	0x74 0x5c 0xa4 0x06 0xd5
> 
> do this binary data make any sense?

See nothing familiar.

[...]

> In my case, the client connection is initiated by XHR and it's a
> long-polling request towards an Erlang server that implements a
> web-based chat system: the recv () return value is very strange,
> because there's really no outstanding data to receive from the
> client. From the nginx logs I see that the only data sent by the
> browser is forwarded to the upstream.

Debug log, as well as tcpdump of what actually happens on the wire 
and some netstat -An and fstat output may be helpfull (not sure if 
netstat/fstat will do the right thing on Darwin though).

See here for some more details:

http://wiki.nginx.org/Debugging

Maxim Dounin



More information about the nginx mailing list