[SERVER-45503] Arrange events so cloner onCompletion is never run with lock held Created: 10/Jan/20 Updated: 29/Oct/23 Resolved: 29/Jan/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 4.3.4 |
| 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 2020-01-13, Repl 2020-01-27, Repl 2020-02-10 | ||||
| Participants: | |||||
| Linked BF Score: | 0 | ||||
| Description |
|
Since we need the initial sync mutex in the onCompletion routine of the cloners, and we cannot guarantee this routine does not run in-line with its creation (because executors may not schedule), we need to delay completion of the cloners until we can release the lock. This can be accomplished by waiting on an executor event (which, on shutdown, will trigger the callback appropriately). |
| Comments |
| Comment by Githook User [ 28/Jan/20 ] |
|
Author: {'email': 'matthew.russotto@10gen.com', 'username': 'mtrussotto', 'name': 'Matthew Russotto'}Message: |