Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Zsh scripts leave defunct processes when running under docker exec



On Tue, 10 Feb 2015 22:53:13 -0800
Bart Schaefer <schaefer@xxxxxxxxxxxxxxxx> wrote:
> I'm not exactly a docker expert, but my understanding is that docker
> incorporates (is built on?) the relatively recent Linux feature of "PID
> namespaces".  Under a PID namespace, the first process started is assigned
> PID 1and is expected to behave like the "init" process in a traditional
> Unix/Linux system, and be the ultimate manager of all the other processes
> spawned within the namespace.
> 
> Zsh is not designed to assume that role.  In particular, when processing a
> script, it will optimize process handling and perform an implicit "exec" of
> the final command in the script, so that it need not hang around waiting
> for that process to exit, assuming that it's own parent will reap it.  In a
> "docker exec" there is no parent to do so.

Yeah, another special case we don't have either the bandwidth or the
expertise to support...

If that *is* it, is it just a case of special-casing PID 1 not to do
"fake" execs?  That's not so hard and shouldn't be problematic in other
cases.

pws



Messages sorted by: Reverse Date, Date, Thread, Author