Class TransactionCache

java.lang.Object
com.arjuna.ats.internal.jts.recovery.transactions.TransactionCache

public class TransactionCache extends Object
The transaction cache ensures that there is no interference between different threads that may be working with the same transaction. The cache automatically removes or refreshes transactions that require no further recovery or re-recovery respectively. Various volatile information for the transaction is also kept in the cache (e.g. number of attempts to recover since first activated in this RecoveryManager run)

Version:
$Id: TransactionCache.java 2342 2006-03-30 13:06:17Z $
See Also:
  • Constructor Details

    • TransactionCache

      public TransactionCache()
  • Method Details

    • get_status

      public static Status get_status(Uid actionUid, String theType) throws org.omg.CORBA.SystemException
      Get the status of a transaction
      Throws:
      org.omg.CORBA.SystemException
    • getCachedStatus

      public static Status getCachedStatus(Uid actionUid) throws org.omg.CORBA.SystemException
      Get the status of a transaction that is already in the cache
      Throws:
      org.omg.CORBA.SystemException
    • getOriginalStatus

      public static Status getOriginalStatus(Uid actionUid, String theType) throws org.omg.CORBA.SystemException
      Get the status of a transaction as it is in the original process (so type is not needed) NoTransaction means the original process has gone
      Throws:
      org.omg.CORBA.SystemException
    • getRecoveryStatus

      public static int getRecoveryStatus(Uid actionUid, String theType)
    • addResourceRecord

      public static void addResourceRecord(Uid actionUid, String theType, Uid rcUid, Resource r)
      Add a new resource to a recovered transaction. This is primarily to allow a new resource that has been provided through a replay_completion to be added to the transaction and thereby replacing the original resource that was passed in on register_resource.
    • replayPhase2

      public static TransactionCache.ReplayPhaseReturnStatus replayPhase2(Uid actionUid, String theType)
      Replays phase 2 of a transaction.