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

Do not apply max lock timeout to ticket acquisition

    XMLWordPrintableJSON

Details

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 7.0.0-rc0
    • None
    • None
    • None
    • Fully Compatible
    • Execution Team 2023-03-20, Execution Team 2023-04-03
    • 143

    Description

      The locker has the ability to set a max timeout for any lock acquisitions. However now that ticket pool size may be smaller, it's more likely for queueing to occur at the ticket acquisition step. Thus we should consider only applying this max timeout to the actual locks and not the ticket acquisition.

      In the general case this should be safe because the ticket pools are global resources and therefore there are no ordered concerns with regard to deadlocks. For multi-doc txns which reacquire a ticket out of order with locks, instead of relying on the timeout we can instead detect the deadlock scenario and abort in that case.

      Attachments

        Activity

          People

            gregory.noma@mongodb.com Gregory Noma
            gregory.noma@mongodb.com Gregory Noma
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: