Skip to content

[Bug]: Master leaks memory and gets oom-killed if cache is not removed beforehand #70319

Description

@dhs-rec

What happened?

When starting a Salt 3008.2 master w/o removing /var/cache/salt/master before, it starts to consume all memory and finally gets oom-killed. When this happens, I can also observe zombie sh child processes spawned by each worker, like:

# pstree|grep salt
systemd-+-/opt/saltstack/-+-4*[/opt/saltstack/]
        |                 |-/opt/saltstack/---2*[{/opt/saltstack/}]
        |                 |-/opt/saltstack/-+-/opt/saltstack/---6*[{/opt/saltstack/}]
        |                 |                 `-5*[/opt/saltstack/-+-sh]
        |                 |                                      `-3*[{/opt/saltstack/}]]
        |                 `-/opt/saltstack/-+-2*[git]
        |                                   `-{/opt/saltstack/}

In detail:

# ps -ef|egrep "sh|salt"
...
root      173371       1  8 16:00 ?        00:00:02 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master MainProcess
root      173383  173371  0 16:00 ?        00:00:00 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master EventPublisher
root      173436  173371  1 16:00 ?        00:00:00 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master PubServerChannel._publish_daemon
root      173439  173371  0 16:00 ?        00:00:00 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master EventMonitor
root      173440  173371  1 16:00 ?        00:00:00 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master Maintenance
root      173441  173371  0 16:00 ?        00:00:00 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master BatchManager
root      173442  173371  1 16:00 ?        00:00:00 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master RequestServer ReqServer_ProcessManager
root      173443  173442  0 16:00 ?        00:00:00 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master RequestServer MWorkerQueue
root      173450  173371  0 16:00 ?        00:00:00 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master FileServerUpdate
root      173472  173442 39 16:00 ?        00:00:10 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master RequestServer MWorker-default-0
root      173473  173442 38 16:00 ?        00:00:10 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master RequestServer MWorker-default-1
root      173474  173442 38 16:00 ?        00:00:10 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master RequestServer MWorker-default-2
root      173475  173442 38 16:00 ?        00:00:10 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master RequestServer MWorker-default-3
root      173476  173442 38 16:00 ?        00:00:10 /opt/saltstack/salt/bin/python3.14 /usr/bin/salt-master RequestServer MWorker-default-4
root      173505  173472  0 16:00 ?        00:00:00 [sh] <defunct>
root      173507  173440  4 16:00 ?        00:00:01 [/opt/saltstack/] <defunct>
root      173508  173475  0 16:00 ?        00:00:00 [sh] <defunct>
root      173510  173473  0 16:00 ?        00:00:00 [sh] <defunct>
root      173512  173474  0 16:00 ?        00:00:00 [sh] <defunct>
root      173514  173476  0 16:00 ?        00:00:00 [sh] <defunct>
...

Once the master cache is removed, the master runs normally again after restarting it.

Type of salt install

Official deb

Major version

3008.x

What supported OS are you seeing the problem on? Can select multiple. (If bug appears on an unsupported OS, please open a GitHub Discussion instead)

ubuntu-24.04

salt --versions-report output

# salt --versions-report
Salt Version:
          Salt: 3008.2
 
Python Version:
        Python: 3.14.6 (main, Jun 11 2026, 02:19:09) [GCC 11.2.0]
 
Dependency Versions:
          cffi: 2.0.0
      cherrypy: 18.10.0
  cryptography: 48.0.0
      dateutil: 2.9.0.post0
     docker-py: Not Installed
         gitdb: 4.0.12
     gitpython: 3.1.50
        Jinja2: 3.1.6
       libgit2: Not Installed
  looseversion: 1.3.0
      M2Crypto: Not Installed
          Mako: Not Installed
       msgpack: 1.1.2
  msgpack-pure: Not Installed
  mysql-python: Not Installed
     packaging: 24.0
     pycparser: 3.00
      pycrypto: Not Installed
  pycryptodome: 3.23.0
        pygit2: Not Installed
  python-gnupg: 0.5.6
        PyYAML: 6.0.3
         PyZMQ: 27.1.0
        relenv: 0.22.14
         smmap: 5.0.2
       timelib: 0.3.0
       Tornado: 6.5.7
           ZMQ: 4.3.5
 
Salt Package Information:
  Package Type: onedir
 
System Versions:
          dist: ubuntu 24.04.5 noble
        locale: utf-8
       machine: aarch64
       release: 7.0.0-1012-aws
        system: Linux
       version: Ubuntu 24.04.5 noble

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugbroken, incorrect, or confusing behaviorneeds-triage

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions