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

startupRecoveryForRestore can drop tables whose catalog write is not yet checkpointed

    • Type: Icon: Bug Bug
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: 5.0.0, 4.4.7
    • Component/s: None
    • Labels:
      None
    • Storage Execution
    • ALL
    • Execution Team 2023-11-13, Execution Team 2023-11-27

      When using startupRecoveryForRestore we advance the oldest timestamp during startup oplog recovery, as described in SERVER-55766. This causes the drop-pending ident reaper to run, dropping the tables for any collection/index drops that were applied during the recovery. However, those writes may not have been checkpointed yet. Thus if a crash occurs before a subsequent checkpoint, we may end up in a state where the catalog references a table which no longer exists in the storage engine.

            Assignee:
            gregory.noma@mongodb.com Gregory Noma
            Reporter:
            gregory.noma@mongodb.com Gregory Noma
            Votes:
            0 Vote for this issue
            Watchers:
            13 Start watching this issue

              Created:
              Updated:
              Resolved: