Hi all.

I'm using LeakFinder product in order to hunt some memory leaks in my
application. Before I can do that, however, I need support in order to
understand the output of LeakFinder itself.

I'm posting here a snippet of example code I'm using to understand.

   def createInterface(self, interface_id, *p, **kw):
       if "test_folder_XXX" in self.objectIds():
           test_folder_XXX = getattr(self, "test_folder_XXX")
           self._delObject("test_folder_XXX")
           del test_folder_XXX
       self.manage_addFolder("test_folder_XXX")

The snippet is silly, but I'm using it to test.

Now, I run Zope (2.7.8), and run 1000 invocations of this code from an
external client (using urlopen).

Then, I take a look at LeakFinder:

                                  Class         References      Change from
reference sample
Persistence.PersistentMapping   3559    0
OFS.Folder.Folder       1817    0

Now, according to what I can understand, there are 1817 references.
This is strange to me, since I've removed the folder object, and then
I've actually deleted the object. Of course, there is something which
is not clear to me. I would be grateful if someone can clarify the
subject.

Regards
Marco
--
Marco Bizzarri
http://iliveinpisa.blogspot.com/
_______________________________________________
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope-dev )

Reply via email to