-
Bug
-
Resolution: Duplicate
-
Major
-
5.0.0.CR5
-
None
I'm getting an NPE, as tx is null at org.infinispan.transaction.TransactionTable.failureCompletingTransaction(Transaction tx)
being invoked from org.infinispan.transaction.TransactionCoordinator.rollback(LocalTransaction)
which has this code:
LocalTxInvocationContext ctx = icc.createTxInvocationContext(); ctx.setLocalTransaction(localTransaction); try { invoker.invoke(ctx, rollbackCommand); txTable.removeLocalTransaction(localTransaction); } catch (Throwable e) { txTable.failureCompletingTransaction(ctx.getTransaction()); log.errorRollingBack(e); throw new XAException(XAException.XA_HEURHAZ); } finally { icc.suspend(); }
you cant see that a localtransaction is set on the context, but then ctx.getTransaction() is passed to the failing method. This variable was unset.
so basically I debugged it already but I'm not sure how this should be solved.
This is currently reproducible by running org.infinispan.lock.APITest (as it fails for some other reason)