If a failover is happening, and consumers are stuck for any reason during the process, HornetQ might issue interrupts on wrong threads.
This is because the list of threads is captured before a time wait what could cause issues with the system is the thread doen't belong to the consumer any longer.
On a MDB that's receiving messages and sending messages to a remote node, pull the cable (or disable network). and make failover happen to a backup.
Steps to Reproduce:
1. Deploy the MDB on that condition
2. Pull the network cable
3. failover that server.
JCA will have connections into invalid state. You will get exception on an infinite loop.
There's a secondary issue here as those connections shouldn't come back to the pool.
Connections to reconnect successfully without