[rabbitmq-discuss] 21673 never recovers from emfile

tsuraan tsuraan at gmail.com
Thu Jan 14 22:06:50 GMT 2010


I accidentally had a process create about a thousand connections to
rabbit (branch bug21673, checkout from this morning or last night),
and rabbit ran out of available file descriptors.  I killed the rogue
process, which freed all the descriptors (I have about a thousand
lines of connection_closed_abruptly followed by the same number of
lines of closing TCP connection in my rabbit.log), but rabbit now
won't allow any new connections to be made to it.  I think the tcp
acceptor process must have died.  Strace on a python process that's
trying to make a rabbit connection ends with these lines:

connect(3, {sa_family=AF_INET, sin_port=htons(5672),
sin_addr=inet_addr("127.0.0.1")}, 16) = 0
fcntl(3, F_GETFL)                       = 0x2 (flags O_RDWR)
fcntl(3, F_SETFL, O_RDWR)               = 0
brk(0x19cf000)                          = 0x19cf000
sendto(3, "AMQP\1\1\t\1"..., 8, 0, NULL, 0) = 8
recvfrom(3,

Which seems to be an infinite wait for some response from rabbit.
I've attached my sasl.log.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mqueue at master-sasl.log
Type: text/x-log
Size: 12835 bytes
Desc: not available
Url : http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20100114/63f62a6e/attachment.bin 


More information about the rabbitmq-discuss mailing list