|
From: | William Uther |
Subject: | [Monotone-devel] I() and mtn automate |
Date: | Sun, 4 Mar 2007 09:06:33 +1100 |
Hi,I was doing some stuff in the n.v.m.cvssync.refactor branch. There were some invariants failing in mtn_cvs while there was a pipe open to an mtn child process (to get the data from automate). This lead to deadlock: as part of the abort-cleanup process, mtn_cvs was waiting for the child to complete, and the child was blocked waiting for more input.
For an example, try one of the new rename tests in e989838a6b9ad268e61c7cf16bd79bc552e14367 without the fixes in mtn_cvs/ cvs_sync.cc.
It looks like the parent should have closed the file descriptors for the pipe, so I don't really understand what the problem is. And I don't have time to debug this cleanup process right now (I've fixed the problems that lead to the invariants failing). So I thought I'd let people know there is a problem there, and they can do what they will :).
Be well, Will :-}
[Prev in Thread] | Current Thread | [Next in Thread] |