JavaEETransactionManagerSimplified seems to be starting a timer called - trasaction-manager but don't appear to be stopping this during the GF shutdown process. This is causing issues in embedded GF (see issue 11088) since this thread is left lingering around. This class will need to stop the timer during GF shutdown. Snippets from the JStack are below.
"transaction-manager" daemon prio=10 tid=0x6ef4f000 nid=0x7f01 in Object.wait() [0x6f3ab000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0xa34bb4f0> (a java.util.TaskQueue)
- locked <0xa34bb4f0> (a java.util.TaskQueue)
This is leading to "Out-Of-Memory" problem and other side effects. This issue needs to be resolved for 3.1.1.