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

Add a non-lossy repairDatabase analog.

    XMLWordPrintableJSON

Details

    • Icon: New Feature New Feature
    • Resolution: Done
    • Icon: Major - P3 Major - P3
    • None
    • None
    • Storage
    • Storage Execution

    Description

      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.

      Attachments

        Activity

          People

            backlog-server-execution Backlog - Storage Execution Team
            richard.kreuter Richard Kreuter (Inactive)
            Votes:
            3 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: