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

GlobalLockAcquisitionTracker::getGlobalWriteLocked should return true if the OperationContext it decorates ever held a global write lock

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.1.11
    • Affects Version/s: None
    • Component/s: Replication
    • None
    • Fully Compatible
    • Repl 2019-04-22
    • 23

      This would ensure two things that are not true today:

      1) A command that unstashed locks held by a transaction waits for writeConcern of the system last OpTime. Today, because the locks are stashed before waiting for writeConcern, the command may end up waiting for an OpTime in a previous term.

      2) Stepdown will kill a command that is waiting for writeConcern after having unstashed and stashed a transaction's locks. The command may be waiting for writeConcern even though it did not do a write, because its Client's last OpTime was set to the system last OpTime.

            Assignee:
            judah.schvimer@mongodb.com Judah Schvimer
            Reporter:
            esha.maharishi@mongodb.com Esha Maharishi (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: