[SERVER-53245] OplogFetcherMock must avoid calling join() from multiple threads Created: 04/Dec/20 Updated: 29/Oct/23 Resolved: 14/Dec/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 4.9.0 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Matthew Russotto | Assignee: | Backlog - Replication Team |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Assigned Teams: |
Replication
|
||||
| Backwards Compatibility: | Fully Compatible | ||||
| Operating System: | ALL | ||||
| Participants: | |||||
| Linked BF Score: | 0 | ||||
| Description |
|
join() may only be called on a given thread once; calling it multiple times or simultaneously results in a fatal error. The construction currently used (if joinable then join) is not synchronized and thus racy. Simply locking the current mutex around this call will not work because it will deadlock, but adding another mutex just for this might be fine. |
| Comments |
| Comment by Githook User [ 09/Dec/20 ] |
|
Author: {'name': 'Matthew Russotto', 'email': 'matthew.russotto@mongodb.com', 'username': 'mtrussotto'}Message: |