next up previous
Next: Redo Pass Up: RESTART PROCESSING Previous: RESTART PROCESSING

Analysis Pass

It takes LSN of the master record as the input and outputs

  1. transaction table which contains the list of transactions which were in in-doubt or unprepared state at the time of failure.
  2. dirty pages table which contains the list of pages that were potentially dirty in the buffers when the system failed.
  3. RedoLSN which is the location on the log from which is the redo pass must start processing the log.
During this pass , if a new log record is encountered which is not already in the dirty pages table , then an entry is made in the table with the current log records LSN as the page's RecLSN. The transaction table is modified to track the state changes of transactions and also to note the LSN of the most recent log record that would need to be undone if it were determined ultimately that the transaction had to be rolled back. If an OSfile-return log record is encountered then any pages belonging to that file which are in the dirty-pages table are removed from the table.

The RedoLSN is the minimum RecLSN from the dirty-pages table at the end of the analysis pass. The redo pass can be skipped if there are no pages in the dirty-pages table.



Vinay V
Mon Apr 12 18:36:08 IST 1999