Checkpoints
Problem - Prevent Restart from scanning back to the start of the log
A checkpoint is a procedure to limit the amount of work for Restart
Commit-consistent checkpointing
- Stop accepting new update, commit, and abort operations
- make list of [active transaction, pointer to last log record]
- flush all dirty pages
- append a checkpoint record to log, which includes the list
- resume normal processing
Database and log are now mutually consistent