public class ServerTransaction extends ArjunaTransactionImple
Modifier and Type | Field and Description |
---|---|
protected RecoveryCoordinator |
_recoveryCoordinator |
controlHandle, parentTransaction
failedList, heuristicList, pendingList, preparedList, readonlyList, savedIntentionList
modifyingActions, objectModel, objectUid, usingActions
Modifier | Constructor and Description |
---|---|
protected |
ServerTransaction(Uid recoveringActUid)
Used during crash recovery.
|
|
ServerTransaction(Uid actUid,
Control myParent) |
|
ServerTransaction(Uid actUid,
Control myParent,
ArjunaTransactionImple parentImpl) |
Modifier and Type | Method and Description |
---|---|
void |
doAfterCompletion(Status s) |
void |
doBeforeCompletion() |
void |
doCommit(boolean report_heuristics) |
void |
doForget() |
int |
doPhase2Abort() |
int |
doPhase2Commit() |
int |
doPrepare() |
void |
finalize() |
Uid |
getSavingUid() |
protected int |
preparedStatus() |
void |
register_synchronization(Synchronization theSync)
Registering a synchronization with interposition is a bit complicated!
Synchronizations must be called prior to prepare; if no
interposed-synchronization is used then either synchronizations would be
registered locally (and then ignored by the commit protocol) or they
would need to be registered remotely, which would mean a cross-address
space call for each synchronization!
The first time a synchronization is registered locally, we register a
proxy back with the real coordinator.
|
boolean |
restore_state(InputObjectState os,
int ot)
This assumes the various lists are zero length when it is called.
|
void |
rollback() |
boolean |
save_state(OutputObjectState os,
int ot)
Redefined version of save_state and restore_state from StateManager.
|
void |
setRecoveryCoordinator(RecoveryCoordinator recCoord) |
String |
toString()
Overloads Object.toString()
|
String |
type()
Overloads BasicAction.type()
|
static String |
typeName() |
commit, create_subtransaction, createOTSRecord, createOTSRecord, destroyAction, equals, forgetHeuristics, get_parent_status, get_status, get_top_level_status, get_transaction_name, get_txcontext, getControlHandle, getSynchronizations, hash_top_level_tran, hash_transaction, interpositionType, is_ancestor_transaction, is_descendant_transaction, is_related_transaction, is_same_transaction, is_top_level_transaction, register_resource, register_subtran_aware, rollback_only, setControlHandle, topLevelUid, uid
addSynchronization, afterCompletion, afterCompletion, asyncAfterCompletion, beforeCompletion, cancel, end, getDeferredThrowable, running, start, start
Abort, Abort, abortStatus, activate, activate, activeThreads, add, addChildAction, addChildThread, addChildThread, addRecord, async_prepare, Begin, checkForCurrent, childTransactions, commitStatus, criticalEnd, criticalStart, Current, deactivate, destroy, doAbort, doAbort, doCommit, doCommit, doPrepare, End, finalizeInternal, getDeferredThrowables, getHeuristicDecision, getHierarchy, getStore, hashCode, hierarchyDepth, insertRecord, isAncestor, maintainHeuristics, onePhaseCommit, parent, phase2Abort, phase2Cleanup, phase2Commit, prepare, preventCommit, removeChildAction, removeChildThread, removeChildThread, setCheckedAction, setHeuristicDecision, status, topLevelAction, topLevelActionUid, typeOfAction, updateHeuristic, updateState
cleanup, createLists, deactivate, deactivate, disable, forgetAction, get_uid, getMutex, getObjectModel, getStoreRoot, loadObjectState, lockMutex, modified, objectType, packHeader, persist, print, rememberAction, setStatus, setupStore, setupStore, setupStore, terminate, tryLockMutex, unlockMutex, unpackHeader
get_uid, preventCommit
protected RecoveryCoordinator _recoveryCoordinator
public ServerTransaction(Uid actUid, Control myParent, ArjunaTransactionImple parentImpl)
protected ServerTransaction(Uid recoveringActUid)
public void finalize()
finalize
in class ArjunaTransactionImple
public String type()
TwoPhaseCoordinator
type
in class ArjunaTransactionImple
public Uid getSavingUid()
getSavingUid
in class BasicAction
public final int doPrepare()
public final void doForget()
public final int doPhase2Commit()
public final int doPhase2Abort()
public void doCommit(boolean report_heuristics) throws HeuristicHazard, SystemException
HeuristicHazard
SystemException
public void rollback() throws SystemException
rollback
in interface TerminatorOperations
rollback
in class ArjunaTransactionImple
SystemException
public void register_synchronization(Synchronization theSync) throws Inactive, SynchronizationUnavailable, SystemException
register_synchronization
in interface CoordinatorOperations
register_synchronization
in class ArjunaTransactionImple
Inactive
SynchronizationUnavailable
SystemException
public void doBeforeCompletion() throws SystemException
doBeforeCompletion
in class ArjunaTransactionImple
SystemException
public void doAfterCompletion(Status s) throws SystemException
doAfterCompletion
in class ArjunaTransactionImple
SystemException
public static String typeName()
public final void setRecoveryCoordinator(RecoveryCoordinator recCoord)
public boolean save_state(OutputObjectState os, int ot)
BasicAction
save_state
in class BasicAction
true
if successful, false
otherwise.public boolean restore_state(InputObjectState os, int ot)
BasicAction
restore_state
in class BasicAction
true
if successful, false
otherwise.public String toString()
BasicAction
toString
in class ArjunaTransactionImple
protected final int preparedStatus()
preparedStatus
in class BasicAction
Copyright © 2021 JBoss by Red Hat. All rights reserved.