← Back to team overview

openstack team mailing list archive

[siwft] Restarting services, FIN_WAIT1

 

Hello,

I've noticed a problem restarting some of swift services, and I don't
know if it's related to a local configuration or a more general problem.

Basically when I try to restart swift-object-server and the service is
busy (you can see the Send-Q has data according to netstat), it stops
but the port can't be used because there are sockets with FIN_WAIT1 state.

The process is gone, but the kernel is stuck after sending the notice to
the remote machine, and doesn't seem to clean the states.

I've found a couple of possible solutions:

 - Set net.ipv4.tcp_orphan_retries to 1 (default seems to be 0 in
Squeeze, and seems that it's the reason the orphans are there for ever)
 - Use a tool like tcpkill

Actually I was wondering if there's a "cleaner" way of stopping the
process without leaving the send queue full.

Regards,

Juan

-- 
Juan J. Martinez
Development, MEMSET

mail: juan@xxxxxxxxxx
 web: http://www.memset.com/

Memset Ltd., registration number 4504980. 25 Frederick Sanger Road,
Guildford, Surrey, GU2 7YD, UK.