[SERVER-44526] Deadlock in ConfigServerTestFixture::setUpAndInitializeConfigDb Created: 08/Nov/19  Updated: 29/Oct/23  Resolved: 11/Nov/19

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

Type: Bug Priority: Major - P3
Reporter: Randolph Tan Assignee: Benety Goh
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-43692 enable two phase index builds by default Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Execution Team 2019-11-18
Participants:
Linked BF Score: 0

 Description   

Scenario:

T1 = main test thread
T2 = DistLockPinger thread

T1 calls ConfigServerTestFixture::setUpAndInitializeConfigDb.
T1 acquired rstl in mode IX, and acquired config db in mode X.
T2 tries to get config db in IX, successfully acquired rstl in mode IX but is blocked for db since T1 has it in mode X.
T1 tries to upgrade rstl to mode X, gets blocked since T2 has it in mode IX.

To reproduce, simply add a sleep after acquiring db in mode X.



 Comments   
Comment by Githook User [ 11/Nov/19 ]

Author:

{'name': 'Benety Goh', 'username': 'benety', 'email': 'benety@mongodb.com'}

Message: SERVER-44526 fix RSTL deadlock in config server test fixture
Branch: master
https://github.com/mongodb/mongo/commit/da86ed254a0fb227fe16f2475badf8b2b9cbadcb

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