175280: TransactionManagerLifecycleListener: improve stop support to avoid closing resources for active Spring MessageListenerContainers
This listener class for Tomcat integration used to shutdown the transaction core on STOP events. Due to (lack of) ordering during such STOP lifecycle event, there may still be active web applications when this is called. As a result, any remaining message listeners will start giving warnings that the core has already been shutdown, along with its JMS resources.
This has been fixed, at the expense of a different (but less intrusive) warning like this one:The web application [/...] appears to have started a thread named [Atomikos:5] but has failed to stop it. This is very likely to create a memory leak.
This is due to the limited knowledge the Tomcat core has about Atomikos threads. It can be ignored, there is no memory leak in this case.