[SERVER-45061] Release lock before releasing completion guard when executors are shutting down. Created: 11/Dec/19 Updated: 29/Oct/23 Resolved: 11/Dec/19 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | None |
| Fix Version/s: | 4.3.3 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Matthew Russotto | Assignee: | Matthew Russotto |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Backwards Compatibility: | Fully Compatible | ||||
| Operating System: | ALL | ||||
| Sprint: | Repl 2019-12-16 | ||||
| Participants: | |||||
| Linked BF Score: | 0 | ||||
| Description |
|
We must make sure we do not hold the InitialSyncer mutex when we free the completion guard in the allDatabaseClonerFuture. Normally this is assured because we've scheduled another callback, which cannot fulfill the completion guard without first taking the lock (which assures that our release of the completion guard will not free it). On shutdown that isn't so. |
| Comments |
| Comment by Githook User [ 11/Dec/19 ] |
|
Author: {'name': 'Matthew Russotto', 'email': 'matthew.russotto@mongodb.com', 'username': 'mtrussotto'}Message: |