<br><br><div class="gmail_quote">On Sun, Jan 8, 2012 at 11:13, Fernando Perez <span dir="ltr">&lt;<a href="mailto:fperez.net@gmail.com">fperez.net@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Hey Min,<br>
<div class="im"><br>
On Sat, Jan 7, 2012 at 11:27 PM, Erik Petigura &lt;<a href="mailto:eptune@gmail.com">eptune@gmail.com</a>&gt; wrote:<br>
&gt; I think this is the issue.  I added<br>
&gt;<br>
&gt;   rc.close()<br>
&gt;<br>
&gt; and the code ran to completion.<br>
<br>
</div>perhaps we should add a __del__ method to the clients that calls<br>
close?  While python destructors aren&#39;t guaranteed to be called at<br>
shutdown and therefore should not be used to do things like remove<br>
external files, they do get called on object destruction in normal<br>
execution.  Since the rc in Erik&#39;s case would be destroyed at function<br>
exit b/c it goes out of scope, then having __del__ would have helped<br>
here.<br></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Do you see any reason not to?<br></blockquote><div><br></div><div><div>Client *does* <a href="https://github.com/ipython/ipython/blob/master/IPython/parallel/client/client.py#L388">close on del</a>.  The problem is that somehow not every last reference is cleaned up.  Note that *every* IPython.parallel  object ultimately has a reference to the Client, even AsyncResult objects, paralllel functions, views, etc.  So `del rc` almost never actually results in `rc.__del__()`.  Also note that Client.close() on __del__ should also be redundant, as Socket.__del__ closes itself, and cleaning up the client should cleanup references to the socket at the same time.</div>

<div><br></div><div>That said, I can&#39;t see the mechanism in the example code for a reference sticking around.  The actual root cause of *that* might be a bug, though not one I understand.</div><div><br></div></div><div>

-MinRK</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<span class="HOEnZb"><font color="#888888"><br>
f<br>
</font></span></blockquote></div><br>