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

validate cmd must open oplog cursors first to obey oplog visibility rules

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.3.1
    • Affects Version/s: None
    • Component/s: Storage
    • None
    • Fully Compatible
    • ALL
    • Execution Team 2019-10-07
    • 0

      Need to move this code to open index cursors to after the collection cursors are opened, so that the collection cursors are the first to open the WT txn and set isOplogReader.

      We expect an oplog cursor to be requested prior to opening a WT txn so that we can enforce oplog visibility rules: if a read is done against another collection first, we do not trigger the read timestamp restrictions involved in reading from the oplog collection. Additionally, only oplog collection reads trigger the visibility reqs: oplog index cursors do not.
      This is also causing non-deterministically failures in validate_oplig_in_background.js because we do not force a checkpoint in the JS test, so it often benignly doesn't find the collection in the checkpoint and exits early; as opposed to finding the collection and hitting the invariant upon attempting access of the data.

            Assignee:
            dianna.hohensee@mongodb.com Dianna Hohensee (Inactive)
            Reporter:
            dianna.hohensee@mongodb.com Dianna Hohensee (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: