Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
If Session close() or [closed() via the IO thread when a protocol close() is received) is called while inside onMessage(), it deadlocks.
As per the JMS spec, the session cannot be closed() until onMessage() method returns.
Therefore the best solution is to mark that close() or closed() has been called and then execute those method once the thread returns from onMessage().