Failure recovery: don't confirm rolled back LSNs, other fixes.
Failure recovery: don't confirm rolled back LSNs. Transactions are rolled back in the order, reverse to the initiation order. Thus we first confirm the greatest LSN, then the one preceding it, and so on. If we confirm LSNs of these transactions, it can be done only out of order. At better diagnostics to the failure of partial write. Rewrite save_snapshot() to produce more diagnostics. Truncate the log file in case of a partial write: simple lseek() to the last good offset is not enough, since, if we choose to close the file, we may still have garbage at the end of the file.
Loading
Please register or sign in to comment