Re: Closing non-blocking network sockets

From: Stewart Forster <slf@dont-contact.us>
Date: Thu, 14 May 1998 09:41:30 +1000

--MimeMultipartBoundary
Content-Type: text/plain; charset=us-ascii

Hiya,

        Whoops. Testing SO_LINGER by calling getsockopt seems to cause
ETIMEDOUT retunr erros occasionally, which cause the parent squid to block
for up to 60 seconds while the timeout occurs.

        This is bad!

        The remote end must be closed and practically dismantled by the
time the getsockopt() is being called. This is resulting in timeouts
occuring while trying to get the value of SO_LINGER.

        It looks like stepping back to my original patch, or just doing
an aioClose every time is going to be the solution.

        Alternatively we can flag those sockets we've marked for no linger
and simply call close() on them.

        Stew.

--MimeMultipartBoundary--
Received on Tue Jul 29 2003 - 13:15:49 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:11:47 MST