Transaction logging includes mechanisms for automatic error handling, and restores data consistency via a recovery mechanism if an error occurs. This kind of operation is referred to as transaction recovery. In addition, transaction management provides the basis for the recovery measures used by external and internal restarts.
Transaction logging guarantees the physical and logical consistency of the database.
Physical consistency
Transaction logging can guarantee physical consistency since the SESAM/SQL-DBH buffers the physical database block before the first change to the physical before image (PBI) and backs this image up if the data block is prematurely displaced into the restart log file (WA-LOG file). If the data block is not prematurely displaced prior to the end of the transaction then no PBI is written.
Saving the after image (AI), that results from any changes also helps guarantee physical consistency.
Logical consistency
Logical consistency is ensured by writing the parts of a row that are to be changed to the transaction log file as a logical before image (LBI).
Consistency point
The DBH adds a consistency point to the current transaction log file for each statement that causes the end of a transaction. If a number of concurrent transactions complete within a short time of one another, a group commit is written for them.
Permanence of the effects of a transaction
At the end of a transaction, the physical and logical before image blocks of the closing transaction are released simultaneously. The transaction can no longer be rolled back and is therefore permanent. The databases manipulated by the transaction are in a logically consistent state with regard to the transaction, as are the relevant after images.
transaction log files
Transaction logging (TA logging) is fundamental to a session-oriented recovery procedure.
The SESAM/SQL DBH creates the relevant transaction log files for use in operation with transaction logging enabled:
TA-LOG files
Two TA-LOG files are used alternately. Information is stored in these files that is used to protect the DBH session. The TA-LOG files are uniquely assigned to each SESAM/SQL DBH. Among other things, the TA-LOG files contains the following:
the logical before images
the physical after images
information on the consistency points that are used to perform an automatic restart after a system failure.
WA-LOG file
Specific information that ensures that the DBH session can be controlled and is protected and that the DBH can restart is stored in this file (see section “DBH-specific files”). Each SESAM/SQL DBH has its own WA-LOG file. Among other things, the WA-LOG file contains the following:
the DBH options which the DBH uses for the restart
list of spaces involved in the restart
the physical before images
information that describes the progress of the restart process
information on synchronization with openUTM
DDL-TA-LOG file
In SQL applications, this file is assigned to the relevant space. It serves to protect longrunning DDL and SSL statements that execute in the service task and takes some of the load off the TA-LOG files.
After the statement has terminated successfully, it is deleted again if it was not created by the user.
SESAM/SQL always creates the DDL-TA-LOG file on the DBH user ID even if the database resides on a DB user ID. The copies are created on the storage medium (disk) and the primary and secondary assignments are made in accordance with the information in the DDL-TA-LOG media records in the media table.
The following default values apply for primary and secondary assignment of the DDL-TA-LOG file: 1536 (primary assignment) and 384 (secondary assignment).