Zombie python processes accumulating
- Dominant language
- Go
- Stars
- 140
- Forks
- 45
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 2
Description
I noticed that the aks-mcp accumulates python zombie processes when run, e.g., in ca Kubernetes cluster, see the screenshot below ("Z" indicates Zombie process).
This can lead to process exhaustion and file descriptor exhaustion (worst case scenario). It is also logged as an K8s event when to many Zombie processes accumulate.
```
ZombieProcessAccumulation: 20 zombie processes on node (threshold: 20)
```
One way to mitigate this, is either to handle SIGCHILD signals and effectively makeing a wait syscall on these processes, or just using something like `tini` or `dumb-init` in the dockerfile, which acts as a init process and reaps zombie processes.
To reproduce: run it in a container, exec into the running container and execute `top`.
Contributor guide
Research direction
Reproduce the issue by running aks-mcp in a container, exec into it, and inspect processes with top. Start by examining the container entrypoint and Dockerfile, then determine whether child processes are being reaped through signal handling or an init process. Done means the container no longer accumulates zombie processes under the reported workload and the documented reproduction no longer shows them.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, go, kubernetes
- Domain
- devops, infrastructure
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100