Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-1766

Crash reading log record

    • Type: Icon: Task Task
    • Resolution: Done
    • None
    • Affects Version/s: None
    • Component/s: None
    • Labels:

      This is from SERVER-17569 and SERVER-17613. The database had an unclean shutdown and recovery crashed on startup or running the wt command.

      The problem is not with the log file but with a code path in *log_scan that may be tickled by the *wt_log_needs_recovery code. The scenario is that we have a log file where we have a checkpoint as the last "real" record in the log. We have a zero-filled hole and then a bunch more records that were written to the file before crashing. The bug is that when we take the code path in log_scan where we detect the zero-filled hole, we know it's the end of log, but we're not returning WT_NOTFOUND but 0 and the caller is trying to unpack the non-existent record. We need to set eol in that code path so that log_scan properly returns.

            sue.loverso@mongodb.com Susan LoVerso
            sue.loverso@mongodb.com Susan LoVerso
            0 Vote for this issue
            1 Start watching this issue