Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
There is a race when trying to recover lost JMS connection which sometimes prevents the service from recovering correctly. When JMS listeners loose connection to a broker, they are entering retry mode where connection attempt is made. When one listener gets a valid Session, other listener's Sessions become invalid which triggers another connection retry invaliding Session of another JMS Consumer. This continues in a loop.
Make sure only one listener is doing the recovery. Other threads block until the first one recovers and test the connection and if OK will refresh Session using a new connection.