Yes, just to clarify, I ran my Jenkinsfile on a Jenkins instance that was deployed to GKE. The Jenkinsfile has two stages to it, with each stage running a different pod template. The only difference between the two pod templates is thatI add the `shareProcessNamespace: true` to the last stage. You have to look a bit carefully, but in the `ps output` for the first stage, you will see a zombie process, whereas in the second stage, there is no zombie process. Now this instance is running my latest version of `durable-task` from PR-106. The behavior is still the same with the latest version on `master` I only need to run `sh` once and wait a bit to pull up a zombie instance. `Durable-task` is guaranteed to create a zombie every time it is executed due to the background process requirement. This only happens within the container itself, so once the container goes away, so do the zombies. My understanding of zombie processes is that the only resource they're consuming is the entry in the process table. So I guess if you have a long running container that's doing a serious amount of shell steps then you can run into trouble? For reference, I looked into `/proc/sys/kernel/pid_max` for the `jenkins/jnlp-slave` image and got `99,999`. Apparently on 32 bit systems pid_max can be configured up to >4 million (2^22) entries. And this is all for just one container. |