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

Have dbCheck ignore prepare conflicts on secondaries

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 7.3.0-rc0, 7.2.0-rc2, 7.0.11
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • Storage Execution
    • Fully Compatible
    • ALL
    • v7.2, v7.0
    • Execution Team 2023-11-13, Execution Team 2023-11-27
    • 8

      In BF-30418 we discovered that dbCheck can hit a prepare conflict on secondaries and fail a wiredtirger invariant than a thread which encounters a prepare conflict must be killable.

      We feel that dbCheck needs to enforce prepare conflicts for correctness, and the oplog applier thread should remain unkillable.

      To fix this we should expand the PrepareConflictBehavior to be able to propagate an error instead of retrying the conflict (and running into the invariant mentioned). This will allow dbCheck to finish with a warning that a certain key range could not be validated

            Assignee:
            louis.williams@mongodb.com Louis Williams
            Reporter:
            sean.zimmerman@mongodb.com Sean Zimmerman
            Votes:
            0 Vote for this issue
            Watchers:
            11 Start watching this issue

              Created:
              Updated:
              Resolved: