Berkeley DB can be used as an XA-compliant resource manager.  The XA
implementation is known to work with the Tuxedo transaction
manager.
      The XA support is encapsulated in the resource manager switch
db_xa_switch, which defines the following functions:
      
        
          - __db_xa_close.  Close the resource manager.
- __db_xa_commit.   Commit the specified transaction.
- __db_xa_complete.  Wait for asynchronous operations to complete.
- __db_xa_end.   Disassociate the application from a transaction.
- __db_xa_forget.  Forget about a transaction that was heuristically completed. (Berkeley DB does not support heuristic completion.)
- __db_xa_open.  Open the resource manager.
- __db_xa_prepare.  Prepare the specified transaction.
- __db_xa_recover.  Return a list of prepared, but not yet committed transactions.
- __db_xa_rollback.  Abort the specified transaction.
- __db_xa_start.  Associate the application with a transaction.
 
      The Berkeley DB resource manager does not support the following optional
XA features:
      
        
          - Asynchronous operations
- Transaction migration
 
      The Tuxedo System is available from Oracle BEA Systems.