Class CommitMarkableResourceRecordRecoveryModule
java.lang.Object
com.arjuna.ats.internal.jta.recovery.arjunacore.CommitMarkableResourceRecordRecoveryModule
- All Implemented Interfaces:
RecoveryModule
This CommitMarkableResourceRecord assumes the following table has been
created:
create table xids (xid varbinary(255), transactionManagerID varchar(255))
(ora/syb/mysql) create table xids (xid bytea, transactionManagerID
varchar(255)) (psql) sp_configure "lock scheme",0,datarows (syb)
The CommitMarkableResourceRecord does not support nested transactions
TODO you have to set max_allowed_packet for large reaps on mysql
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
notifyOfCompletedBranch
(String commitMarkableResourceJndiName, Xid xid) void
Called by the RecoveryManager at start up, and then PERIODIC_RECOVERY_PERIOD seconds after the completion, for all RecoveryModules, of the second passvoid
Called by the RecoveryManager RECOVERY_BACKOFF_PERIOD seconds after the completion of the first passboolean
wasCommitted
(String jndiName, Xid xid) Can only be called after the first phase has executedMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.arjuna.ats.arjuna.recovery.RecoveryModule
hasWorkLeftToDo
-
Constructor Details
-
CommitMarkableResourceRecordRecoveryModule
- Throws:
NamingException
ObjectStoreException
-
-
Method Details
-
notifyOfCompletedBranch
-
periodicWorkFirstPass
public void periodicWorkFirstPass()Description copied from interface:RecoveryModule
Called by the RecoveryManager at start up, and then PERIODIC_RECOVERY_PERIOD seconds after the completion, for all RecoveryModules, of the second pass- Specified by:
periodicWorkFirstPass
in interfaceRecoveryModule
-
periodicWorkSecondPass
public void periodicWorkSecondPass()Description copied from interface:RecoveryModule
Called by the RecoveryManager RECOVERY_BACKOFF_PERIOD seconds after the completion of the first pass- Specified by:
periodicWorkSecondPass
in interfaceRecoveryModule
-
wasCommitted
Can only be called after the first phase has executed- Parameters:
xid
-- Returns:
- whether the Xid was commited by the resource manager
- Throws:
ObjectStoreException
- if the resource manager was offline
-