Icinga / Icinga/icinga2

Call malloc_trim(3) Before Reload to Release Unused Memory🧠

Open
#10,302 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
2.2k
Forks
616
Avg merge
5d 6h
Merged PRs (30d)
10

Description

Is your feature request related to a problem? Please describe.

Currently, memory that has been allocated and not released is often retained by the current process. While this can benefit the same process when it mallocs more memory (re-usage), it doesn't help other processes, including a new main process during a reload. As a result, the system may be inefficient in terms of memory utilization across reloads.

Describe the solution you'd like

Before every reload attempt, the main process should call malloc_trim(3) if available to release unused memory back to the system. This would allow the system to free up memory that may no longer be needed, helping with overall memory efficiency and preventing wasted space for other processes, including newly spawned ones.

Describe alternatives you've considered

  • #8110

Additional context

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the main-process reload path and determine where availability of malloc_trim(3) is checked. Ensure the call occurs before every reload attempt when available, and verify the behavior with the relevant reload or memory-management tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
backend, performance
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.