-
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)
-
None
-
None
-
None
-
None
-
None
-
None
-
None
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
-