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

Remove UninterruptibleLockGuard from TransactionParticipant

    XMLWordPrintableJSON

Details

    • Icon: Improvement Improvement
    • Resolution: Gone away
    • Icon: Major - P3 Major - P3
    • None
    • None
    • None
    • None
    • Storage Execution

    Description

      UninterruptibleLockGuard cannot be used in transaction operation code paths if we wish to prevent deadlocks. SERVER-34951 would invariant that UninterruptibleLockGuard is not used along with _maxLockTimeout (which is set for all transactions) in LockerImpl, but is blocked on this ticket.

      Specifically, the UninterruptibleLockGuard in commitUnpreparedTransactions should be removed. Other uses of UninterruptibleLockGuard in TransactionParticipant should be investigated as well.

      Attachments

        Activity

          People

            backlog-server-execution Backlog - Storage Execution Team
            daniel.ernst@mongodb.com Daniel Ernst
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: