gc.garbage from paramiko
Robey Pointer
robey at lag.net
Thu Feb 9 05:33:01 GMT 2006
On 8 Feb 2006, at 8:14, Andrew Bennetts wrote:
> On Mon, Feb 06, 2006 at 07:09:24PM +1100, Andrew Bennetts wrote:
>> On Fri, Feb 03, 2006 at 10:41:11AM -0800, Robey Pointer wrote:
> [...]
>>>
>>> Do you have any way to reproduce this outside of Zope? I tried
>>> running the bzr selftests (and a few other tests, like 'bzr push' to
>>> an sftp site) with 'python -i' and then doing gc.collect() and
>>> looking in gc.garbage, but wasn't able to reproduce it.
>>
>> I'm working on this. I'll let you know when I've got something
>> minimal and
>> complete I can share with you.
>
> I have some progress to report.
Thanks! That was enough to help me reproduce it. And fix it. It
turned out to be a paper-bag bug where the auth_handler was pretty
blatantly creating a cycle. I'm embarrased. :) (Oddly, Packetizer
wasn't involved, so its presence in gc.garbage was a red herring.)
I fixed the cycle by using a weakref, then I removed Transport's
__del__ since it doesn't need one anyway. The bzr branch for
paramiko is <http://www.lag.net/paramiko/bzr/paramiko>, so if you
want a quick fix, you should be able to pull it from there.
robey
More information about the bazaar
mailing list