[SERVER-7755] Inconsistent behavior between platforms for memory-map failure Created: 24/Nov/12  Updated: 06/Dec/22  Resolved: 14/Sep/18

Status: Closed
Project: Core Server
Component/s: MMAPv1, Storage
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major - P3
Reporter: Tad Marshall 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
Environment:

Comparing Linux with Windows


Assigned Teams:
Storage Execution
Operating System: ALL
Participants:

 Description   

On Windows, a failure on any call to MapViewOfFile() or MapViewOfFileEx() will result in a Fatal Assertion and server shutdown.

On Linux, a failure on a call to mmap() from remapPrivateView() will result in an abort(), but a failure in map(), createReadOnlyMap() or createPrivateMap() is just logged, and the server does not shut down.

We should probably follow the same rules on these two platforms.

This test reported this issue 7114 times before the test finally failed:

http://buildlogs.mongodb.org/Nightly%20Linux%20RHEL%2032-bit/builds/294/test/recent%20failures/mrShardedOutput.js

 m30001| Sat Nov 24 02:11:49.814 [conn3]   mmap() failed for /data/db/mrShardedOutput1/test.5 len:536608768 errno:12 Cannot allocate memory
 m30001| Sat Nov 24 02:11:49.814 [conn3] mmap failed with out of memory. You are using a 32-bit build and probably need to upgrade to 64
 m30001| Sat Nov 24 02:11:49.814 [conn3]   mmap() failed for /data/db/mrShardedOutput1/test.5 len:536608768 errno:12 Cannot allocate memory
 m30001| Sat Nov 24 02:11:49.814 [conn3] mmap failed with out of memory. You are using a 32-bit build and probably need to upgrade to 64
 m30001| Sat Nov 24 02:11:49.814 [conn3]   mmap() failed for /data/db/mrShardedOutput1/test.5 len:536608768 errno:12 Cannot allocate memory
 m30001| Sat Nov 24 02:11:49.814 [conn3] mmap failed with out of memory. You are using a 32-bit build and probably need to upgrade to 64
 m30001| Sat Nov 24 02:11:49.814 [conn3]   mmap() failed for /data/db/mrShardedOutput1/test.5 len:536608768 errno:12 Cannot allocate memory
 m30001| Sat Nov 24 02:11:49.814 [conn3] mmap failed with out of memory. You are using a 32-bit build and probably need to upgrade to 64
 m30001| Sat Nov 24 02:11:49.815 [conn3]   mmap() failed for /data/db/mrShardedOutput1/test.5 len:536608768 errno:12 Cannot allocate memory
 m30001| Sat Nov 24 02:11:49.815 [conn3] mmap failed with out of memory. You are using a 32-bit build and probably need to upgrade to 64
 m30001| Sat Nov 24 02:11:49.815 [conn3]   mmap() failed for /data/db/mrShardedOutput1/test.5 len:536608768 errno:12 Cannot allocate memory
 m30001| Sat Nov 24 02:11:49.815 [conn3] mmap failed with out of memory. You are using a 32-bit build and probably need to upgrade to 64
 m30001| Sat Nov 24 02:11:49.815 [conn3]   mmap() failed for /data/db/mrShardedOutput1/test.5 len:536608768 errno:12 Cannot allocate memory
 m30001| Sat Nov 24 02:11:49.815 [conn3] mmap failed with out of memory. You are using a 32-bit build and probably need to upgrade to 64
 m30001| Sat Nov 24 02:11:49.815 [conn3]   mmap() failed for /data/db/mrShardedOutput1/test.5 len:536608768 errno:12 Cannot allocate memory
 m30001| Sat Nov 24 02:11:49.815 [conn3] mmap failed with out of memory. You are using a 32-bit build and probably need to upgrade to 64
 m30001| Sat Nov 24 02:11:49.815 [conn7]   mmap() failed for /data/db/mrShardedOutput1/test.5 len:536608768 errno:12 Cannot allocate memory
 m30001| Sat Nov 24 02:11:49.815 [conn7] mmap failed with out of memory. You are using a 32-bit build and probably need to upgrade to 64
 m30001| Sat Nov 24 02:11:49.816 [conn3]   mmap() failed for /data/db/mrShardedOutput1/test.5 len:536608768 errno:12 Cannot allocate memory
 m30001| Sat Nov 24 02:11:49.816 [conn3] mmap failed with out of memory. You are using a 32-bit build and probably need to upgrade to 64
 m30001| Sat Nov 24 02:11:49.816 [conn3]   mmap() failed for /data/db/mrShardedOutput1/test.5 len:536608768 errno:12 Cannot allocate memory
 m30001| Sat Nov 24 02:11:49.816 [conn3] mmap failed with out of memory. You are using a 32-bit build and probably need to upgrade to 64


Generated at Thu Feb 08 03:15:31 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.