-
Type: Improvement
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Internal Code
-
Product Performance
-
Dev Tools 2019-05-06, Dev Tools 2019-04-22
-
(copied to CRM)
tcmalloc may occasionally release large amounts of pageheap free memory to the kernel by calling madvise. This can take seconds when the amount of memory involved is many GB. A tcmalloc internal lock is held while this happens, so this can potentially stall many threads, causing widespread latency spikes.
There is no direct metric that diagnoses this (SERVER-31380 would provide that), but it can be indirectly inferred to be a likely cause from the following:
- tcmalloc pageheap free memory decreases to near zero
- tcmalloc unmapped memory increases by a corresponding amount
- resident memory decreases by the same amount
- system free memory increases by that amount
- duplicates
-
SERVER-34027 Production issue under high load.
- Closed
- is duplicated by
-
SERVER-34027 Production issue under high load.
- Closed
-
SERVER-37541 MongoDB Not Returning Free Space to OS
- Closed
- is related to
-
SERVER-33296 Excessive memory usage due to heap fragmentation
- Backlog
- related to
-
SERVER-31380 Add metrics related to tcmalloc acquiring and decommitting memory from system
- Closed