Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-11923

Add a non-lossy repairDatabase analog.

    • Type: Icon: New Feature New Feature
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Storage
    • Storage Execution

      Problem: in the presence of corruption, repairDatabase is lossy and almost never the right thing to use, but in the absence of corruption, repairDatabase is non-lossy and a valid way to compact a database's file set. This has lead to complex documentation, education, and customer support issues about whether and when it's safe to run the command.

      Proposal: introduce a new command that does what repairDatabase currently does, but that aborts and cleans up after itself when corruption is encountered. (For the purpose of discussion, let's call this "rebuildDatabase".)
      This way, we can document rebuildDatabase as a safe, non-lossy way to compact a database, and repairDatabase as the last ditch recovery mechanism that people should exercise extra care about using.

      Documentation changes needed: document a new command. Clarify documentation about an old command.

            Assignee:
            backlog-server-execution [DO NOT USE] Backlog - Storage Execution Team
            Reporter:
            richard.kreuter Richard Kreuter (Inactive)
            Votes:
            3 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: