[SERVER-61733] Determine if global lock upgrade is necessary in transaction_participant.cpp:fetchActiveTransactionHistory Created: 24/Nov/21  Updated: 29/Oct/23  Resolved: 15/Jun/22

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

Type: Task Priority: Major - P3
Reporter: Dan Larkin-York Assignee: Haley Connelly
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-60621 Investigate if we can ban upgrading t... Closed
is depended on by SERVER-66609 Avoid global lock upgrade in storage_... Closed
Backwards Compatibility: Fully Compatible
Sprint: Execution Team 2022-06-13, Execution Team 2022-06-27
Participants:

 Description   

When fetching the active transaction history, we explicitly take the global lock in IS mode, but then almost immediately take further action which requires upgrading the global lock to IX mode. We want to avoid upgrading the global lock whenever possible, as it can lead to deadlock. Is it safe to take the global lock explicitly in IX mode here, or to avoid the upgrade in some other way?



 Comments   
Comment by Githook User [ 14/Jun/22 ]

Author:

{'name': 'Haley Connelly', 'email': 'haley.connelly@mongodb.com', 'username': 'haleyConnelly'}

Message: SERVER-61733 Prevent Global lock upgrade in transaction_participant.cpp:fetchActiveTransactionHistory
Branch: master
https://github.com/mongodb/mongo/commit/58d713bdf8c5b8137208d99a04bde9c0e388976b

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