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

Must not truncate entire oplog before truncate point

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.9.0-alpha0
    • Affects Version/s: None
    • Component/s: Replication
    • None
    • Fully Compatible
    • ALL
    • Repl 2020-10-19, Repl 2020-11-02, Repl 2020-11-16
    • 28

      As a result of the Remove Stable Optime Candidates List (PM-1713) project, it is possible to have a case where there are no oplog entries before the oplog truncate after point (computer from the all-durable timestamp, which is at or after the stable optime candidate).  This happens when an oplog hole is open long enough that the size of the oplog entries after the hole is bigger than the configured oplog size, and so all entries prior to the stable timestamp get truncated

      We cannot handle this case; we need an oplog entry before the truncate point to know when to start fetching. So we must ensure during truncation that we leave a record at or before the truncate point.
       

            Assignee:
            matthew.russotto@mongodb.com Matthew Russotto
            Reporter:
            matthew.russotto@mongodb.com Matthew Russotto
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: