TurboIMAGE/XL Database Management System Reference Manual MPE/iX V6.5 (30391-90011)
316 Chapter7
Logging and Recovery
Logical Transactions
transaction A failed to complete, all of its record additions are suppressed. Because
transaction B is dependent upon the suppressed transaction A, it cannot be recovered.
DBRECOV is forced to suppress transaction B, even though it successfully completed during
real-time processing. This potential problem could be avoided if transactions modifying the
database employ locking correctly. Transactions attempting to access the same data
concurrently are serialized by the locking mechanism.
Locking and Transaction Interdependence
To maximize the extent of recovery, locking should be used with logging to eliminate
interdependence of concurrent static and multiple database transactions. Locking by
logical transaction (that is, DBBEGIN and DBEND or DBXBEGIN and DBXEND) guarantees the
logical consistency of the database. For roll-back recovery, locking by logical transaction
ensures that all incomplete transactions are backed out of the database. For roll-forward
recovery, transaction locking is recommended.
Figure 7-2. Suppression of Transactions Due to Inadequate Locking