[SERVER-39939] Avoid taking any lock manager locks in the killCursors code path Created: 04/Mar/19 Updated: 06/Dec/22 |
|
| Status: | Backlog |
| Project: | Core Server |
| Component/s: | Querying |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Anton Korshunov | Assignee: | Backlog - Query Execution |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | query-44-grooming, storch | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Assigned Teams: |
Query Execution
|
||||||||||||
| Participants: | |||||||||||||
| Linked BF Score: | 0 | ||||||||||||
| Description |
|
In the killCursors code path we acquire a collection lock via AutoStatsTracker which could cause a deadlock (e.g., when there is a parallel DDL task queueing up on taking a Global X lock). Ideally, we'd want to re-design the killCursors code path to avoid any lock manager locks. Once it is done, the test from |