[SERVER-42459] Implement a lock acquisition graph type Created: 26/Jul/19  Updated: 06/Dec/22  Resolved: 12/Nov/19

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

Type: New Feature Priority: Major - P3
Reporter: Mira Carey Assignee: Backlog - Service Architecture
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates SERVER-42897 Validate base-level latches Closed
Assigned Teams:
Service Arch
Participants:

 Description   

Implement a library which provides access to a lock acquisition graph type.

That type should provide:

  • methods which can be invoked from a mutex's lock and unlock calls that update its internal notion of process/system-wide lock acquisition.
  • some method to dump it's internal map

We should probably also consider how to manage updating a graph without serializing all lock access in the system. (perhaps through an api which allows ingestion of a smaller graph from a larger one. That kind of scheme might let us update a thread local graph live, and only sync to the global graph at client destruction / global shutdown).



 Comments   
Comment by Benjamin Caimano (Inactive) [ 12/Nov/19 ]

rahul.sundararaman has mostly covered this one via SERVER-42897.

Comment by Kaloian Manassiev [ 29/Jul/19 ]

When working on this, please note that there is already a deadlock detector, which we implemented for the lock manager and it used to be utilized for a particular MMAP V1 deadlock, which was happening. It got deleted when we removed the MMAP V1 storage engine, but it would be nice if it could be of use for this project.

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