[SERVER-32638] Permit dblock acquisition waiting to be interruptible by killOp Created: 10/Jan/18  Updated: 30/Oct/23  Resolved: 01/Mar/18

Status: Closed
Project: Core Server
Component/s: Concurrency, Storage
Affects Version/s: None
Fix Version/s: 3.7.3

Type: Improvement Priority: Major - P3
Reporter: Eric Milkie Assignee: Louis Williams
Resolution: Fixed Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
is depended on by SERVER-34616 second index build interrupt crashed ... Closed
Problem/Incident
causes SERVER-33927 The NoopWriter is not resilient to `I... Closed
causes SERVER-34616 second index build interrupt crashed ... Closed
Related
related to SERVER-49305 Remove reconfig retries in our tests Closed
Backwards Compatibility: Fully Compatible
Backport Requested:
v3.6
Sprint: Storage 2018-02-12, Storage NYC 2018-03-12
Participants:
Case:
Linked BF Score: 5

 Description   

Currently, a dblock acquisition for a contended resource is not interruptable by killOp; the thread will wait indefinitely until the lock is granted.
This is not normally a problem, as most locks are held for short periods of time (except for foreground index builds). However, the design of multi-statement transactions will allow locks to be held for long periods of time in more cases. In such situations, it will be important to have the ability to kill operations that are waiting for locks to be granted.

This applies to global, database, and collection-level locks.



 Comments   
Comment by Githook User [ 02/Mar/18 ]

Author:

{'email': 'louis.williams@mongodb.com', 'name': 'Louis Williams', 'username': 'louiswilliams'}

Message: SERVER-32638 Disable lock interruption for createIndex command
Branch: master
https://github.com/mongodb/mongo/commit/ae20f392b61ddc90d2191856e76940ca3c7a3ed2

Comment by Louis Williams [ 01/Mar/18 ]

Opened SERVER-33573, SERVER-33575, SERVER-33576, and SERVER-33577 to track the needed improvements in the Storage, Query, Replication, and Sharding code, respectively.

Comment by Githook User [ 01/Mar/18 ]

Author:

{'email': 'louis.williams@mongodb.com', 'name': 'Louis Williams', 'username': 'louiswilliams'}

Message: SERVER-32638 Rename interruptable to interruptible
Branch: master
https://github.com/mongodb/mongo/commit/9cec63d67ed2f63d26303a1c44189e1ac73d167a

Comment by Githook User [ 01/Mar/18 ]

Author:

{'email': 'louis.williams@mongodb.com', 'name': 'Louis Williams', 'username': 'louiswilliams'}

Message: SERVER-32638: Allow lock acquisition to be interruptable
Branch: master
https://github.com/mongodb/mongo/commit/7d7969eb7439b08207e29437e94fc1db5459c205

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