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

Remove UninterruptibleLockGuard from TransactionParticipant

    • Type: Icon: Improvement Improvement
    • Resolution: Gone away
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage Execution

      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.

            Assignee:
            backlog-server-execution [DO NOT USE] Backlog - Storage Execution Team
            Reporter:
            daniel.ernst@mongodb.com Daniel Ernst
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: