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

Attempt to synchronize ghost timestamps

    XMLWordPrintableJSON

Details

    • Icon: Improvement Improvement
    • Resolution: Incomplete
    • Icon: Major - P3 Major - P3
    • None
    • None
    • Storage
    • None
    • Execution Team 2020-06-15, Execution Team 2020-07-13

    Description

      The goal here is to allow for ghost timestamps in spirit, but better control the timestamp used to avoid out-of-order update chains (e.g: 10->20->100->40).

      When a ghost timestamp is required instead of looking at the logical clock, attempt to perform:

      1. Acquire PBWM + RSTL (whichever the right order is)
      2. If primary, write a no-op oplog entry
      3. If secondary, ghost timestamp with last-applied

      Claims that need to be verified:

      • All usages of ghost timestamps are capable of acquiring the PBWM
      • last-applied is sufficient for avoiding out-of-order update chains
      • Choosing an earlier value doesn't persist something that's intended to be rolled back. I heard of that behavior being relied upon a while back, but I'm not too familiar and am unsure if the behavior still exists.

      Attachments

        Activity

          People

            milkie@mongodb.com Eric Milkie
            daniel.gottlieb@mongodb.com Daniel Gottlieb (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: