Rethink wiredtiger_open contract

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Storage
    • None
    • Storage Execution
    • v4.4
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      unsupported WiredTiger file version should be added here and call setWtIncompatible

      Consider having Version incompatibility detected also setWtIncompatible.

      New description:
      See how MongoDB and WT can cooperate to better express error cases on wiredtiger_open.

      MongoDB behaviors today that can hopefully be simplified:

      • MongoDB tries calling wiredtiger_open with a specific order of "compatibility versions" to learn the journal files WT discovered at startup.
        • Having a way to do this in one call would be great.
        • If multiple calls is still required, consider having a better way to suppress repeated compatibility error messages.
        • This line specifically is for WT refusing to startup on 4.0 or earlier data files.
      • Knowing whether WT has modified data files.
        • When MongoDB is running with --repair it first creates a "repair lock file". That lock file can be safely removed after repair completes.
        • However, it's typical that newer MongoDB versions can be used to repair older data (to help lessen the burden of backporting). It can be unclear if a wiredtiger_open with salvage fails because data was corrupted, or if WT refused to look at the data files because of a versioning error (e.g: 4.4 on 4.0 data files) that's outside of any compatibility constraint.

              Assignee:
              [DO NOT USE] Backlog - Storage Execution Team
              Reporter:
              Daniel Gottlieb (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

                Created:
                Updated: