Berkeley DB can be used as an XA-compliant resource manager. The XA implementation is known to work with the Tuxedo(tm) 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:
The Tuxedo System is available from BEA Systems, Inc.
For additional information on Tuxedo, see
Building Client/Server Applications Using Tuxedo, by Hall (John Wiley & Sons, Inc.).
For additional information on XA Resource Managers, see
X/Open CAE Specification Distributed Transaction Processing: The XA Specification, X/Open Document Number: XO/CAE/91/300.
For additional information on The Tuxedo System, see
The Tuxedo System, by Andrade, Carges, Dwyer and Felts (Addison Wesley Longman).