<div dir="ltr">Correct, it doesn't do that prior to the patch.  It looks like it's never exiting this loop:<div><br></div><div><div>        try:</div><div>            for worker in workers:</div><div>                worker.join()</div><div>        except:</div></div><div><br></div><div>either when a Ctrl+C happens, or when all the processes finish.  I guess it's stuck in there for some reason.  So even the test runner doesn't finish.  Still investigating.</div><div><br></div><div>Also to answer Greg's question, yes we were using dosep before.  The problem seems to be related to swtiching from multiprocess.Pool to doing the pumping manually.</div></div><br><div class="gmail_quote"><div dir="ltr">On Fri, Sep 4, 2015 at 3:54 PM Todd Fiala <<a href="mailto:todd.fiala@gmail.com">todd.fiala@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">tfiala added a comment.<br>
<br>
In <a href="http://reviews.llvm.org/D12651#240439" rel="noreferrer" target="_blank">http://reviews.llvm.org/D12651#240439</a>, @zturner wrote:<br>
<br>
> Hmm, yea the problem is worse than I thought.  Even if I don't do Ctrl+C at<br>
>  all (I just run the test suite like I always have and let it finish) it's<br>
>  just leaving a bunch of stale processes at the end without them shutting<br>
>  down on their own.<br>
<br>
<br>
Ok, and it doesn't do that prior to the patch?  (i.e. this isn't just a case of the processes slowly falling off at the end?)<br>
<br>
There's a point where all the worker processes are joined, which should mean they're done.  So either the join is failing to complete (maybe because something in the process isn't wrapping up right), or the join isn't causing them to die.<br>
<br>
Is the initial test runner itself finishing up?<br>
<br>
<br>
<a href="http://reviews.llvm.org/D12651" rel="noreferrer" target="_blank">http://reviews.llvm.org/D12651</a><br>
<br>
<br>
<br>
</blockquote></div>