[SERVER-34737] mongo_lock.py graph should reflect thread queue order Created: 27/Apr/18  Updated: 06/Dec/22

Status: Backlog
Project: Core Server
Component/s: Testing Infrastructure
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: James Wahlin Assignee: Backlog - Server Tooling and Methods (STM) (Inactive)
Resolution: Unresolved Votes: 0
Labels: stm, tig-hanganalyzer
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Server Tooling & Methods
Participants:

 Description   

Consider the following lock wait scenario:

  1. Thread T1 has acquired a database lock with MODE_IX
  2. Thread T2 requests the same lock with MODE_X
  3. Thread T3 requests the same lock with MODE_IX

The mongo_lock.py graph will have a line from both T2 and T3 to the database lock, indicating that both are waiting on the same lock. What is missing from this picture is that T1 is really waiting behind T2 in the lock acquisition queue and could otherwise acquire the lock if the T2 acquisition were interrupted.

What may be a clearer representation would be a chart that showed T2 waiting on lock acquisition and T1 waiting on T2.



 Comments   
Comment by Steven Vannelli [ 10/May/22 ]

Moving this ticket to the Backlog and removing the "Backlog" fixVersion as per our latest policy for using fixVersions.

Generated at Thu Feb 08 04:37:41 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.