Race condition in SocketAcceptorDelegate.unbind
-----------------------------------------------
Key: DIRMINA-202
URL: http://issues.apache.org/jira/browse/DIRMINA-202
Project: Directory MINA
Type: Bug
Versions: 1.0
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