[SERVER-26499] SIGKILL during MMAPv1 namespace file creation can lead to invalid file size and will block mongod startup Created: 06/Oct/16 Updated: 06/Dec/22 Resolved: 14/Sep/18 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | MMAPv1, Stability, 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 Fix | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||
| Assigned Teams: |
Storage Execution
|
||||||||||||||||||||||||
| Operating System: | ALL | ||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||
| Linked BF Score: | 15 | ||||||||||||||||||||||||
| Description |
|
When we create namespace files under MMAPv1 we create and initialize to 0 the contents in 1MB increments. If mongoD receives a SIGKILL during this process, it is possible for a file to be written that does not fall on a 1MB boundary which is larger than the guaranteed atomic write size (at least by default, both on Linux and Windows with our current implementation). When mongoD is restarted with the invalid namespace file in place, it will fatally assert when it finds that this file is not a multiple of 1MB. |