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

Add option to verify to report all data corruption in a file

    • 8
    • Storage Engines - 2022-10-17
    • v7.0, v6.3, v6.0, v5.0, v4.4

      Summary

      Add a mode to WT_SESSION::verify() so that it doesn't panic if it gets a checksum error during a read. Instead, have it skip past the corrupt block and continue with as much of the rest of the verification as it can, reporting additional errors as it goes.

      If there were one or more checksum errors, we can panic at the end of verify.

      If implemented, we should include an option to wt verify to enable it.

      Motivation

      Currently, WT_SESSION::verify() will terminate (and panic) the first time it hits a checksum mismatch when reading a block. For diagnostic purposes, it could be useful to understand all of the corruption in a file. 

      Today a WiredTiger engineer could do this on a local failure with the help of a debugger, but it would be block verification functions. But that can be laborious, especially for someone who hasn't done it before. There is no current way to get this type of information from a failure in the field.

            Assignee:
            monica.ng@mongodb.com Monica Ng
            Reporter:
            keith.smith@mongodb.com Keith Smith
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: