On 05/07/2012 11:05 PM, Costin Manolache wrote:
By 'unlockAccept' you mean the socket connection made to the acceptor to force the accept() to unblock ? How are you getting the socket accept() to return, my understanding was that close() or thread interrupt don't work in all cases/VMs.
Well, my question is why the need to break the accept() call at the first place? I mean if we are in the pause so that all sessions time out the extra connection would in worse case scenario double the cumulative session timeout, so you server might actually go down in 19.9 instead 10 minutes, but who cares. The amount of complexity we are throwing inside unlockAccept is just getting insane, and it's still fragile. Another alternate solution might be to setSoTimeout on accept socket and eat any SocketTimeoutException. It would mean that we would pull out of accept() each 10 seconds, and on busy server it might take more then 10 seconds to unlockAccept anyhow. Regards -- ^TM --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org