[PATCH 3 of 3] worker: handle worker failures more aggressively

Bryan O'Sullivan bos at serpentine.com
Thu Feb 21 16:05:58 CST 2013


On Thu, Feb 21, 2013 at 1:58 PM, Isaac Jurado <diptongo at gmail.com> wrote:

>   - I was confused, since os.fork() and atomic writes to pipes are also
>     Unix only (POSIX in particular).


I see. Thanks for explaining what you were looking for.

So, insofar as there's a Windows plan (and my hope is that someone else
will pick up the baton there and figure it out), it is not very interesting
yet: when developing the Windows code, refactor the process startup code in
the worker module so that the Unix-specific stuff is more self-contained. I
didn't do that early on because I don't have Windows code sitting around to
suggest what shape the portability stuff should have. That's all.

The process killing code is already portable as far as I can tell, so based
on my current understanding, it can stay as it is.

By the way, I think that small writes to pipes may possibly be atomic on
Windows, although the WriteFile documentation doesn't state this clearly
anywhere.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20130221/7c5ae41b/attachment.html>


More information about the Mercurial-devel mailing list