[SERVER-26825] Race condition between profiler insert & fsyncLock Created: 28/Oct/16 Updated: 06/Dec/22 Resolved: 16/Sep/19 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Storage |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | James Wahlin | Assignee: | Backlog - Storage Execution Team |
| Resolution: | Won't Do | Votes: | 0 |
| Labels: | todo_in_code | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Assigned Teams: |
Storage Execution
|
||||||||
| Operating System: | ALL | ||||||||
| Participants: | |||||||||
| Description |
|
When mongod is under fsyncLock we will skip writing entries to the system.profile collection as they (and the associated operation) would be blocked on the fsyncLock global read lock. The check we perform for this however has no protection against fsyncLock state changing post-check but prior to lock acquisition for the profiler write. https://github.com/mongodb/mongo/blob/r3.4.0-rc1/src/mongo/db/instance.cpp#L705 |