// Suspend any bad transaction - there is bug somewhere, but we will try to tidy things up
if (currentTx != null && currentTx.equals(transaction) == false)
{
log.warn("Current transaction " + currentTx + " is not the expected transaction.");
tm.suspend();
tm.resume(transaction);
}
else
{
// We have the correct transaction
currentTx = null;