[SERVER-39643] Replace UninterruptibleLockGuard with runWithoutInterruption() in shutdown Created: 15/Feb/19 Updated: 08/Jan/24 Resolved: 05/Mar/19 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Siyuan Zhou | Assignee: | Siyuan Zhou |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Operating System: | ALL | ||||||||||||||||
| Sprint: | Repl 2019-03-11 | ||||||||||||||||
| Participants: | |||||||||||||||||
| Linked BF Score: | 28 | ||||||||||||||||
| Description |
|
UninterruptibleLockGuard only suppresses the interruptions in lock acquisition. We should use opCtx->runWithoutInterruption() instead in case checkForInterrupt() is called elsewhere. opCtx->waitForConditionOrInterrupt() in checkOutSessionForKill is an example. |
| Comments |
| Comment by Siyuan Zhou [ 05/Mar/19 ] |
|
Thanks mira.carey@mongodb.com, I believe your ticket has covered this case too. Thanks for the quick fix! |
| Comment by Mira Carey [ 05/Mar/19 ] |
|
I've closed Not sure if there is other work you'd like to do in this space, or if that takes care of the use cases you're concerned with (I do believe it cleans up BF-12099) |
| Comment by Judah Schvimer [ 04/Mar/19 ] |
|
I've filed |
| Comment by Siyuan Zhou [ 19/Feb/19 ] |
|
judah.schvimer, this doesn't extend to uses in TransactionParticipant. There's an active discussion in the CR about whether this will fix the problem or not. Initially the work for TransactionParticipant is added to |
| Comment by Judah Schvimer [ 19/Feb/19 ] |
|
siyuan.zhou, does this ticket extend to uses in TransactionParticipant or should we file a separate ticket for that? |