[SERVER-45608] Remove UninterruptibleLockGuard from TransactionParticipant Created: 16/Jan/20  Updated: 27/Oct/23  Resolved: 20/Jul/20

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Daniel Ernst Assignee: Backlog - Storage Execution Team
Resolution: Gone away Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-34951 LockerImpl should invariant against a... Backlog
Assigned Teams:
Storage Execution
Participants:

 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.



 Comments   
Comment by Connie Chen [ 03/Mar/20 ]

Moving this back to open since no action planned until next sprint (3/23/2020), this ticket needs additional investigation

Generated at Thu Feb 08 05:09:16 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.