Class RecoveryAwareTransactionTable
java.lang.Object
org.infinispan.transaction.impl.TransactionTable
org.infinispan.transaction.xa.XaTransactionTable
org.infinispan.transaction.xa.recovery.RecoveryAwareTransactionTable
- All Implemented Interfaces:
TransactionTable
Transaction table that delegates prepared transaction's management to the
RecoveryManager
.- Since:
- 5.0
- Author:
- Mircea.Markus@jboss.com
-
Nested Class Summary
Nested classes/interfaces inherited from class org.infinispan.transaction.impl.TransactionTable
TransactionTable.CompletedTransactionStatus
-
Field Summary
Fields inherited from class org.infinispan.transaction.xa.XaTransactionTable
cacheName, recoveryManager, xid2LocalTx
Fields inherited from class org.infinispan.transaction.impl.TransactionTable
CACHE_STOPPED_TOPOLOGY_ID, clustered, commandsFactory, configuration, partitionHandlingManager, rpcManager, running, transactionOriginatorChecker, txCoordinator
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
cleanupLeaverTransactions
(List<Address> members) First moves the prepared transactions originated on the leavers into the recovery cache and then cleans up the transactions that are not yet prepared.void
failureCompletingTransaction
(javax.transaction.Transaction tx) Returns theRemoteTransaction
associated with the supplied transaction id.getRemoteTransactionXid
(Long internalId) Iterates over the remote transactions and returns the XID of the one that has an internal id equal with the supplied internal Id.void
localTransactionPrepared
(LocalTransaction localTransaction) void
remoteTransactionCommitted
(GlobalTransaction gtx, boolean onePc) Removes theRemoteTransaction
corresponding to the given tx.void
Marks the transaction as prepared.void
Methods inherited from class org.infinispan.transaction.xa.XaTransactionTable
commit, enlist, enlistClientTransaction, getLocalTransaction, getLocalTxCount, prepare, removeLocalTransaction, startXidMapping
Methods inherited from class org.infinispan.transaction.impl.TransactionTable
afterCompletion, beforeCompletion, containRemoteTx, containsLocalTx, getCompletedTransactionStatus, getGlobalTransaction, getLocalGlobalTransaction, getLocalTransaction, getLocalTransaction, getLocalTransactions, getMinTopologyId, getOrCreateLocalTransaction, getOrCreateLocalTransaction, getOrCreateRemoteTransaction, getOrCreateRemoteTransaction, getRemoteGlobalTransaction, getRemoteTransactions, getRemoteTxCount, isTransactionCompleted, markTransactionCompleted, onTopologyChange, onViewChange, recalculateMinTopologyIdIfNeeded, releaseLocksForCompletedTransaction, removeRemoteTransaction, start
-
Constructor Details
-
RecoveryAwareTransactionTable
public RecoveryAwareTransactionTable()
-
-
Method Details
-
remoteTransactionPrepared
Marks the transaction as prepared. If at a further point the originator fails, the transaction is removed form the "normal" transactions collection and moved into the cache that holds in-doubt transactions. SeecleanupLeaverTransactions(java.util.List)
- Overrides:
remoteTransactionPrepared
in classTransactionTable
-
localTransactionPrepared
- Overrides:
localTransactionPrepared
in classTransactionTable
- See Also:
-
cleanupLeaverTransactions
First moves the prepared transactions originated on the leavers into the recovery cache and then cleans up the transactions that are not yet prepared.- Overrides:
cleanupLeaverTransactions
in classTransactionTable
- Parameters:
members
- The list of cluster members
-
getRemoteTransaction
Description copied from class:TransactionTable
Returns theRemoteTransaction
associated with the supplied transaction id. Returns null if no such association exists.- Overrides:
getRemoteTransaction
in classTransactionTable
-
remoteTransactionRollback
- Overrides:
remoteTransactionRollback
in classTransactionTable
-
remoteTransactionCommitted
Description copied from class:TransactionTable
Removes theRemoteTransaction
corresponding to the given tx.- Overrides:
remoteTransactionCommitted
in classTransactionTable
-
getLocalPreparedXids
-
failureCompletingTransaction
public void failureCompletingTransaction(javax.transaction.Transaction tx) - Overrides:
failureCompletingTransaction
in classTransactionTable
-
getLocalTxThatFailedToComplete
-
getRemoteTransactionXid
Iterates over the remote transactions and returns the XID of the one that has an internal id equal with the supplied internal Id. -
removeRemoteTransaction
-