TS/MP Pathsend and Server Programming Manual (G06.24+, H06.03+)

Designing Your Application
NonStop TS/MP Pathsend and Server Programming Manual132500
2-6
Protecting Transactions
Protecting Transactions
After listing and grouping the components of the Enter Sales transaction, you protect the
integrity of each transaction, and ultimately the consistency of the database, with the
TMF subsystem. The following pages outline how to integrate the TMF subsystem with
your business transactions. For information about the overall features of the TMF
subsystem, including database file recovery and audit trails, refer to the Introduction to
NonStop Transaction Processing.
Defining TMF Transactions
From a systems perspective, a transaction includes all the steps necessary to transform a
database from one consistent state to another. A TMF transaction must be constructed as
a logical unit of work: that is, all parts of a transaction, which usually consists of
multiple operations, must be handled as a single entity. If any parts of a TMF transaction
are not successfully completed or applied to a database, then none of the transaction
parts are applied to the database. By forcing all components of a transaction to be
handled as a single unit of work, the TMF subsystem prevents inaccurate or partial
updates to the database and protects database consistency.
At the application level, a TMF transaction is defined by special procedure calls or
statements that specify the beginning and end of a transaction. For example, in a
Pathsend requester program, a transaction begins with a call to the
BEGINTRANSACTION procedure and ends with a call to the ENDTRANSACTION or
ABORTTRANSACTION procedure. The procedure calls that define TMF transactions
act as brackets; that is, the statements are placed before and after the add record, update
record, and delete record procedures in your requester program.
Figure 2-3
illustrates the use of the TMF subsystem by a Pathsend requester program
and a Pathway server program. In the illustration, the variable called TRANSID acts as a
transaction identifier.