[infinispan-issues] [JBoss JIRA] (ISPN-5927) Infinispan calling setRollbackOnly() when detecting write skew
Stephen Fikes (JIRA)
issues at jboss.org
Fri Nov 6 18:29:00 EST 2015
Stephen Fikes created ISPN-5927:
-----------------------------------
Summary: Infinispan calling setRollbackOnly() when detecting write skew
Key: ISPN-5927
URL: https://issues.jboss.org/browse/ISPN-5927
Project: Infinispan
Issue Type: Bug
Components: Core
Affects Versions: 6.0.2.Final
Reporter: Stephen Fikes
In the context of Java Data Grid, when Infinispan detects write skew [#write-skew] during prepare, it invokes {{setRollbackOnly()}} on the transaction implementation [#set-rollback]. This results in an exception ({{com.arjuna.ats.jta.exceptions.InvalidTerminationStateException: ARJUNA016064: The transaction is in an invalid state!}}) because this operation is disallowed by Arjuna while in the {{PREPARING}} state. The result is that the causal error ({{org.infinispan.transaction.WriteSkewException}}) is lost and the error that propagates indicates the "invalid state" is actually the cause of the failed transaction.
h3. {anchor:write-skew}Write skew exception
... org.infinispan.transaction.WriteSkewException: Write skew detected on key <key> for transaction TransactionImple < ... status: ActionStatus.PREPARING >
at org.infinispan.transaction.WriteSkewHelper.performWriteSkewCheckAndReturnNewVersions(WriteSkewHelper.java:53)
...
at org.infinispan.transaction.TransactionCoordinator.prepare(TransactionCoordinator.java:104)
at org.infinispan.transaction.xa.TransactionXaAdapter.prepare(TransactionXaAdapter.java:92)
at com.arjuna.ats.internal.jta.resources.arjunacore.XAResourceRecord.topLevelPrepare(XAResourceRecord.java:213)
...
h3. {anchor:set-rollback}Set Rollback
at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.setRollbackOnly(TransactionImple.java:313)
at org.infinispan.interceptors.InvocationContextInterceptor.markTxForRollbackAndRethrow(InvocationContextInterceptor.java:163)
...
at org.infinispan.commands.AbstractVisitor.visitPrepareCommand(AbstractVisitor.java:103)
...
at org.infinispan.transaction.xa.TransactionXaAdapter.prepare(TransactionXaAdapter.java:92)
at com.arjuna.ats.internal.jta.resources.arjunacore.XAResourceRecord.topLevelPrepare(XAResourceRecord.java:213)
...
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
More information about the infinispan-issues
mailing list