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

Single voter replica set primaries must wait for the truncate point for {j:true} write concern

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.3.4
    • Affects Version/s: None
    • Component/s: Storage
    • None
    • Fully Compatible
    • Execution Team 2020-02-24, Execution Team 2020-03-09
    • 0

      Single voter replica set primaries must wait for the truncate point for {j:true} write concern to ensure user confirmed writes are not lost on recovery after a crash.

      Now that primaries will write the oplogTruncateAfterPoint, we must be careful not to truncate writes that were confirmed to the user as persisted, which should be safe across a server crash.

      We only want to do this for single voter replica sets, because multi-node multi-voter replica sets are likely to lose {w: 1, j: true} writes anyway after a primary crash due to rollback: they are inherently unsafe already.
      Single voter mutli-node replica sets must use the truncate point on startup for cross replica set data consistency. Single voter single node replica sets are doing it for simplicity, not to make startup behavior complicated regarding the truncate point, and avoid breaking downstream dependencies.

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

              Created:
              Updated:
              Resolved: