Expand description
Process-level RAM guardian with adaptive eviction and hard OOM protection.
Monitors RSS via platform-specific APIs and triggers tiered cache eviction when memory usage exceeds configurable thresholds (default: 5% of system RAM). At critical levels (>3x limit), performs emergency shutdown to prevent OS OOM kill.
Structs§
- Memory
Snapshot - Snapshot of current memory state for diagnostics.
Enums§
Functions§
- abort_
requested - Returns
trueif the guardian has requested background tasks to abort. - force_
purge - Force immediate purge of all caches and jemalloc arenas.
- get_
rss_ bytes - Current process RSS in bytes, or
Noneif unavailable. - get_
system_ ram_ bytes - Total physical RAM in bytes, or
Noneif unavailable. - is_
under_ pressure - Quick, non-allocating memory pressure check for hot loops (scanners, indexers).
Returns
trueif memory is at or above Soft pressure and work should be paused/stopped. - jemalloc_
purge - Force-purge all jemalloc arenas to return memory to the OS.
- peak_
rss_ bytes - Recorded peak RSS since process start.
- rss_
limit_ bytes - Returns the RSS limit in bytes based on
max_ram_percentconfig. - start_
guard - Start the background memory guardian task (idempotent). Polls every 3s (normal) or 1s (under pressure). At Critical level, performs emergency shutdown to prevent OS OOM kill.