Traditional theory and practice of write-ahead logging and of database recovery focus on three
failure classes: transaction failures (typically due to deadlocks) resolved by transaction
rollback system failures (typically power or software faults) resolved by restart with log
analysis redo and undo phases and media failures (typically hardware faults) resolved by
restore operations that combine multiple types of backups and log replay. The recent addition
of single-page failures and single-page recovery has opened new opportunities far beyond the
original aim of immediate lossless repair of single-page wear-out in novel or traditional
storage hardware. In the contexts of system and media failures efficient single-page recovery
enables on-demand incremental redo and undo as part of system restart or media restore
operations. This can give the illusion of practically instantaneous restart and restore:
instant restart permits processing new queries and updates seconds after system reboot and
instant restore permits resuming queries and updates on empty replacement media as if those
were already fully recovered. In the context of node and network failures instant restart and
instant restore combine to enable practically instant failover from a failing database node to
one holding merely an out-of-date backup and a log archive yet without loss of data updates
or transactional integrity. In addition to these instant recovery techniques the discussion
introduces self-repairing indexes and much faster offline restore operations which impose no
slowdown in backup operations and hardly any slowdown in log archiving operations. The new
restore techniques also render differential and incremental backups obsolete complete backup
commands on a database server practically instantly and even permit taking full up-to-date
backups without imposing any load on the database server. Compared to the first version of this
book this second edition adds sections on applications of single-page repair instant restart
single-pass restore and instant restore. Moreover it adds sections on instant failover among
nodes in a cluster applications of instant failover recovery for file systems and data files
and the performance of instant restart and instant restore.