[Zope-dev] memory leak

ender kthangavelu@earthlink.net
Wed, 11 Apr 2001 05:14:47 -0700


On Wednesday 11 April 2001 03:34, Marco Nova wrote:

<snip to relevant text:)>

>>> This looks like a potential bug in either ParsedXML or the
>>> code you're using
>>> to manipulate the components within ParsedXML.
>>>

>>I can send you the code for the two external method I use, they only need a
>>webserver (that could be zope too) that serve an XML page (I can provide
>> the XML the methods needs) and the bunch of dtml methods I use to show the
>> XML. Anyway I will try to understand what's happening with ParsedXML and
>> my code.
>>
>>> > Products.ParsedXML.DOM.Core.Text                  3241
>>>
>>> 27318  +24077
>>>
>>> > Products.ParsedXML.DOM.Core.Element               1777
>>>
>>> 14493  +12716
>>>
>>> > Products.ParsedXML.DOM.ExpatBuilder.ExpatBuilder  81  1506  +1425
>>> > Products.ParsedXML.Printer.PrintVisitor           3  107  +104
>>> > Products.ParsedXML.DOM.Core.Document              10  112  +102
>>> >
>>> > Yes, I've a lot of refcounts leaks.
>>> >

generally dom objects need to be released to destroy them, doing a del doc, 
won't do it because of circular ref nature of dom. i'm guessing that you 
would need to call something akin to releaseNode from pyxml (xml.dom.ext) on 
the document to release it fully else you're likely to see the behavior 
you're seeing, namely dom objects staying in memory. 

a quick browse through the source of ParsedXML doesn't offer any clues on how 
to release the object (or if its nescessary). its hard to say since 
acquisition is being used to help with the dom tree.

i'll chuck into the collector.

cheers

kapil