OpenTP1 Version 7 Description

[Contents][Glossary][Index][Back][Next]

3.1.1 Distributed transactions

In OpenTP1 systems a transaction is a logical unit of work in which a group of related task steps is handled as a single unit. When the transaction is successful, a commit operation is performed so that all the steps that make up a transaction have their desired effects. When the transaction is not successful, a rollback operation is performed so that none of the steps that make up a transaction have an effect. By such operations OpenTP1 ensures that at the end of a transaction the resources are in a consistent state: either all the steps in a transaction have the desired effects, or none of the steps in a transaction have an effect.

Previous online transaction processing systems were either controlled by a single large-scale computer (in which case the consistency of a transaction could be guaranteed only within that one computer) or by a specialized DBMS (in which case only specialized database operations could be treated as transactions). OpenTP1, however, provides general online transaction processing in which parts of a transaction are processed at different locations and on different machines. This type of transaction processing is called distributed transaction processing.

In online distributed transaction processing, OpenTP1 manages distributed resources so that they are maintained in a consistent state. Transactions can be executed concurrently without adversely affecting each other: for example, OpenTP1 ensures that more than one transaction never updates the same resource at the same time.

OpenTP1 maintains the consistency of resources even when some mechanical or communication failure prevents immediate updating of resources. By automatically collecting information relating to transactions and the resources, OpenTP1 can ensure that failure recovery is possible even in the face of significant mechanical or communication failure.

Figure 3-1 shows a distributed transaction.

Figure 3-1 A distributed transaction

[Figure]