Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
A user reported the following scenario:
when sendAndReceiveCas() of an AS Engine is Thread.interrupt()-ed it can happen that the ActiveMQMessageSender does not have a cacheEntry of the CAS that's sending the request anymore [1] for that a warning is logged.
However directly after that the cacheEntry is deferenced leading to a NPE [2].
This exception will then be swallowed by BaseMessageSender [3] and the process will be retried [4].
This behavior is rather unfortunate.
It would be benefitial to add a null check at [2] that the cacheEntry is there before accessing ist. Also at [3] instead of swallowing all exceptions they should be logged at debug level.