[PATCH STABLE] worker: wait worker pid explicitly

Yuya Nishihara yuya at tcha.org
Fri Jul 29 09:27:58 EDT 2016


On Thu, 28 Jul 2016 17:53:02 +0100, Jun Wu wrote:
> I actually considered this before submitting the V1. This may "eat" return
> values useful for other code. I will send the SIGCHLD patch.

Yep, so my proposal (for default) was to use pipe.

        for line in fp:
            if line is progress message:
                l = line.split(' ', 1)
                yield int(l[0]), l[1][:-1]
            elif line is result code:
                save problem
                killworkers()
        waitworkers()

But I found forked workers could propagate exceptions to dispatch(), so we
can't simply switch to this model.


More information about the Mercurial-devel mailing list