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

Ensure retried commitTransaction command waits for writeConcern

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major - P3
    • Resolution: Fixed
    • None
    • 4.0.0-rc3, 4.1.1
    • Replication
    • None
    • Fully Compatible
    • ALL
    • Repl 2018-06-18

    Description

      If a commitTransaction command is successful but times out waiting for replication, or the response to the driver is lost, the driver may retry the commitTransaction command. In that case, the retried commitTransaction command will not do any writes, thus it will not advance the lastOpTime on the Client, nor will it take the Global lock at all to trigger the GlobalLockAcquisitionTracker. On commitTransaction retries we should call ReplClientInfo::setLastOpToSystemLastOpTime, to ensure that we wait for write concern appropriately.

      Attachments

        Issue Links

          Activity

            People

              judah.schvimer@mongodb.com Judah Schvimer
              spencer@mongodb.com Spencer Brody (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: