Configuring Tuxedo for transactions
A transaction is a unit of work that has ACID properties—Atomic, Consistent, Isolated, and Durable. But Tuxedo takes transactions a step further and supports distributed transactions that provide ACID properties for two or more databases from different vendors, queueing systems, and filesystems. Tuxedo was also the basis for the X/Open XA specification, which is the de facto standard for distributed transactions.
Transactions are infectious in Tuxedo. Once a transaction is started in Tuxedo, all the following service calls become a part of the transaction unless otherwise specified. If any of the services participating in the transaction fails, the whole transaction is marked as bad and must be aborted.
Although distributed transactions and two-phase commit do have problems and limitations, they work well in Tuxedo. Distributed transactions are not as trendy as Basically Available, Soft state, Eventual consistency (BASE) properties...