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

Properly initialize initial data timestamp

    • Type: Icon: Bug Bug
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Replication
    • None
    • ALL
    • Repl 2018-04-09, Repl 2018-04-23

      When replication startup determines the data is consistent with the top of oplog, replication must also set the initial data timestamp to the top of oplog.

      Ideally speaking, an initial data timestamp of T implies:

      1. A snapshot at time T on this node is consistent with all other primary/secondary members of a replica set.
      2. Storage must not assume a snapshot at T-1 is consistent with any other replica set member.

      However in practice, collection drops effectively "change the past". Until SERVER-34069 is done (optimistically assuming that fix is complete), a node must still play from T -> top of oplog before it has a consistent snapshot (at the "top of oplog" time) w.r.t other replica set members. The only relaxation of the the ideal properties is that the time between T and the prepare of the two-phase drop should contain data from the dropped collection, but that history was lost. The ideal property is only in violation on an unclean shutdown. This relaxation is only material for replication startup recovery.

            Assignee:
            daniel.gottlieb@mongodb.com Daniel Gottlieb (Inactive)
            Reporter:
            daniel.gottlieb@mongodb.com Daniel Gottlieb (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: