public interface RecoveryManager
Modifier and Type | Interface and Description |
---|---|
static interface |
RecoveryManager.InDoubtTxInfo
An object describing in doubt transaction's state.
|
static interface |
RecoveryManager.RecoveryIterator
Stateful structure allowing prepared-tx retrieval in a batch-oriented manner, as required by
XAResource.recover(int) . |
Modifier and Type | Method and Description |
---|---|
String |
forceTransactionCompletion(Xid xid,
boolean commit)
Replays the given transaction by re-running the prepare and commit.
|
String |
forceTransactionCompletionFromCluster(Xid xid,
Address where,
boolean commit)
This method invokes
forceTransactionCompletion(javax.transaction.xa.Xid, boolean) on the specified node. |
Set<RecoveryManager.InDoubtTxInfo> |
getInDoubtTransactionInfo()
Same as
getInDoubtTransactionInfoFromCluster() , but only returns transactions from the local node. |
Set<RecoveryManager.InDoubtTxInfo> |
getInDoubtTransactionInfoFromCluster()
Returns a
Set containing all the in-doubt transactions from the cluster, including the local node. |
List<Xid> |
getInDoubtTransactions()
Local call that returns a list containing:
|
RecoveryAwareTransaction |
getPreparedTransaction(Xid xid)
Local call returning the remote transaction identified by the supplied xid or null.
|
RecoveryManager.RecoveryIterator |
getPreparedTransactionsFromCluster()
Returns the list of transactions in prepared state from both local and remote cluster nodes.
|
boolean |
isTransactionPrepared(GlobalTransaction globalTx)
Checks both internal state and transaction table's state for the given tx.
|
void |
removeRecoveryInformation(Collection<Address> where,
Xid xid,
boolean sync,
GlobalTransaction gtx,
boolean fromCluster)
Removes from the specified nodes (or all nodes if the value of 'where' is null) the recovery information
associated with these Xids.
|
RecoveryAwareTransaction |
removeRecoveryInformation(Long internalId)
Same as
removeRecoveryInformation(javax.transaction.xa.Xid) but identifies the tx by its internal id. |
RecoveryAwareTransaction |
removeRecoveryInformation(Xid xid)
Remove recovery information stored on this node (doesn't involve rpc).
|
void |
removeRecoveryInformationFromCluster(Collection<Address> where,
long internalId,
boolean sync)
Same as
removeRecoveryInformation(java.util.Collection, javax.transaction.xa.Xid, boolean,
org.infinispan.transaction.xa.GlobalTransaction, boolean) but the transaction is identified by its internal id,
and not by its xid. |
RecoveryManager.RecoveryIterator getPreparedTransactionsFromCluster()
Set<RecoveryManager.InDoubtTxInfo> getInDoubtTransactionInfoFromCluster()
Set
containing all the in-doubt transactions from the cluster, including the local node. This
does not include transactions that are prepared successfully and for which the originator is still in the
cluster.RecoveryManager.InDoubtTxInfo
Set<RecoveryManager.InDoubtTxInfo> getInDoubtTransactionInfo()
getInDoubtTransactionInfoFromCluster()
, but only returns transactions from the local node.void removeRecoveryInformation(Collection<Address> where, Xid xid, boolean sync, GlobalTransaction gtx, boolean fromCluster)
skipTxCompletionCommand
- true
if it must skip the TxCompletionNotificationCommand
.
Used when a partition happens.where
- on which nodes should this be executed.xid
- the list of xids to be removed.sync
- execute sync or async (false)gtx
- the global transactionfromCluster
- void removeRecoveryInformationFromCluster(Collection<Address> where, long internalId, boolean sync)
removeRecoveryInformation(java.util.Collection, javax.transaction.xa.Xid, boolean,
org.infinispan.transaction.xa.GlobalTransaction, boolean)
but the transaction is identified by its internal id,
and not by its xid.List<Xid> getInDoubtTransactions()
- all the remote transactions prepared on this node for which the originator(i.e. the node where the tx stared) is no longer part of the cluster. AND - all the locally originated transactions which are prepared and for which the commit failed
RecoveryAwareTransaction getPreparedTransaction(Xid xid)
String forceTransactionCompletion(Xid xid, boolean commit)
xid
- tx to commit or rollbackcommit
- if true tx is committed, if false it is rolled backString forceTransactionCompletionFromCluster(Xid xid, Address where, boolean commit)
forceTransactionCompletion(javax.transaction.xa.Xid, boolean)
on the specified node.boolean isTransactionPrepared(GlobalTransaction globalTx)
RecoveryAwareTransaction removeRecoveryInformation(Long internalId)
removeRecoveryInformation(javax.transaction.xa.Xid)
but identifies the tx by its internal id.RecoveryAwareTransaction removeRecoveryInformation(Xid xid)
xid@see
- #removeRecoveryInformation(java.util.Collection, javax.transaction.xa.Xid, boolean)Copyright © 2016 JBoss, a division of Red Hat. All rights reserved.