[ http://issues.apache.org/jira/browse/DIRMINA-202?page=comments#action_12373355 ]
John K Peterson commented on DIRMINA-202: ----------------------------------------- I apologize. I'm not very familiar with NIO yet and I only read the summary of the selector.wakeup function. You're correct that it sounds like it could be a problem with Classpath. (I've had several other issues with it running ApacheDS that I've reported to them already.) I'll do a separate test with selector and wakeup to see if Classpath is the problem. > Race condition in SocketAcceptorDelegate.unbind > ----------------------------------------------- > > Key: DIRMINA-202 > URL: http://issues.apache.org/jira/browse/DIRMINA-202 > Project: Directory MINA > Type: Bug > Reporter: John K Peterson > > On my system (Linux 2.4.22/JamVM 1.4.2/Classpath 0.90), ApacheDS gets stuck > in SocketAcceptorDelegate.unbind. > SocketAcceptorDelegate.unbind does the following: > 1) creates a cancellation request > 2) starts up a worker thread > 3) puts the cancellation request on the cancelQueue > 4) wakes up the worker thread's selector > 5) waits for the cancellation request to be done > The problem is that 4) assumes that 2) has gotten the worker thread to point > where it has called selector.select(). However, there's no guarantee that > the worker thread has gotten that far, in which case the wakeup occurs before > the select and then the select hangs. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
