The log reader is
an active component during a restart or
recovery. The log reader is a
server
task.
From the data that
was stored at the time of the last savepoint, the log
reader determines the transaction file,
and uses this transaction file to re-generate the transaction
list.
The log reader determines the required information from redo log management or from the backup manager, so that all the redo log entries written since the last savepoint can be made available.
· If transactions in the transaction list are marked as ended at the time of the savepoint, the log reader enters these transactions in the redo list immediately.
· The log reader creates a redo log file for each further transaction found in the redo log entries.
·
If a COMMIT is found
for the whole transaction, the log reader enters the transaction in the redo
list.
·
If a ROLLBACK is found
for the whole transaction, the log reader enters the transaction in the redo
list.
· ROLLBACK in subtransactions: If a ROLLBACK is found within a transaction, the log reader removes the corresponding redo log entries from the redo log file. This means that these log entries are not processed unnecessarily.
· If uncompleted transactions are found after all redo log entries are read, the log reader flags these transactions with a ROLLBACK and enters them in the redo list. These transactions are then treated as ROLLBACK transactions.
Further processing of the transactions is performed by the redo tasks.
See also Example: Restart