public interface XATransactionController extends TransactionController
It is expected that the following interfaces are only used during the runtime portion of a 2 phase commit connection.
If a runtime exception causes a transaction abort (of a transaction that has not been successfully prepared), then the transaction will act as if xa_rollback() had been called. The transaction will be aborted and any other call other than destroy will throw exceptions.
The XAResource interface is a Java mapping of the industry standard XA resource manager interface. Please refer to: X/Open CAE Specification - Distributed Transaction Processing: The XA Specification, X/Open Document No. XO/CAE/91/300 or ISBN 1 872630 24 3.
NOTE - all calls to this interface assume that the caller has insured that there is no active work being done on the local instance of the transaction in question. RESOLVE - not sure whether this means that the connection associated with the transaction must be closed, or if it just means that synchronization has been provided to provide correct MT behavior from above.
Modifier and Type | Field and Description |
---|---|
static int |
XA_OK |
static int |
XA_RDONLY
Public Methods of This class:
|
IS_DEFAULT, IS_KEPT, IS_TEMPORARY, ISOLATION_NOLOCK, ISOLATION_READ_COMMITTED, ISOLATION_READ_COMMITTED_NOHOLDLOCK, ISOLATION_READ_UNCOMMITTED, ISOLATION_REPEATABLE_READ, ISOLATION_SERIALIZABLE, KEEP_LOCKS, MODE_RECORD, MODE_TABLE, OPEN_CONGLOMERATE, OPEN_CREATED_SORTS, OPEN_SCAN, OPEN_SORT, OPEN_TOTAL, OPENMODE_BASEROW_INSERT_LOCKED, OPENMODE_FOR_LOCK_ONLY, OPENMODE_FORUPDATE, OPENMODE_LOCK_NOWAIT, OPENMODE_LOCK_ROW_NOWAIT, OPENMODE_SECONDARY_LOCKED, OPENMODE_USE_UPDATE_LOCKS, READONLY_TRANSACTION_INITIALIZATION, RELEASE_LOCKS
Modifier and Type | Method and Description |
---|---|
void |
xa_commit(boolean onePhase)
This method is called to commit the current XA global transaction.
|
int |
xa_prepare()
This method is called to ask the resource manager to prepare for
a transaction commit of the transaction specified in xid.
|
void |
xa_rollback()
rollback the current global transaction.
|
abort, addColumnToConglomerate, anyoneBlocked, commit, commitNoSync, compressConglomerate, conglomerateExists, countOpens, createAndLoadConglomerate, createBackingStoreHashtableFromScan, createConglomerate, createSort, createXATransactionFromLocalTransaction, debugOpened, defragmentConglomerate, destroy, dropConglomerate, dropSort, fetchMaxOnBtree, findConglomid, findContainerid, getAccessManager, getActiveStateTxIdString, getContextManager, getDynamicCompiledConglomInfo, getFileHandler, getLockSpace, getStaticCompiledConglomInfo, getTransactionIdString, getUserCreateConglomPropList, isGlobal, isIdle, isPristine, logAndDo, openCompiledConglomerate, openCompiledScan, openConglomerate, openGroupFetchScan, openScan, openSort, openSortCostController, openSortRowSource, openSortScan, openStoreCost, purgeConglomerate, recreateAndLoadConglomerate, releaseSavePoint, rollbackToSavePoint, setNoLockWait, setSavePoint, startNestedUserTransaction
getProperties, getProperty, getPropertyDefault, propertyDefaultIsVisible, setProperty, setPropertyDefault
static final int XA_RDONLY
static final int XA_OK
void xa_commit(boolean onePhase) throws StandardException
Once this call has been made all other calls on this controller other than destroy will throw exceptions.
onePhase
- If true, the resource manager should use a one-phase
commit protocol to commit the work done on behalf of
current xid.StandardException
- Standard exception policy.int xa_prepare() throws StandardException
If XA_OK is returned then any call other than xa_commit() or xa_abort() will throw exceptions. If XA_RDONLY is returned then any call other than destroy() will throw exceptions.
StandardException
- Standard exception policy.void xa_rollback() throws StandardException
The given transaction is roll'ed back and it's history is not maintained in the transaction table or long term log.
Once this call has been made all other calls on this controller other than destroy will throw exceptions.
StandardException
- Standard exception policy.Apache Derby V10.13 Internals - Copyright © 2004,2016 The Apache Software Foundation. All Rights Reserved.