Martijn Faassen wrote:
> Another data point. Copy & paste of ParsedXML documents is normal
> and fast when the object is in a folder not surrounded by too
> many other folders (or objects in general, not sure yet). If I create
> a bunch of very large folders sitting next to the ParsedXML document
> that I'm going to copy, the copying process slows down and generates
> a lot of extraneous megs that I can then clean out again from the ZODB.
> 
> Somehow the document is being affected by its environment, though I 
> doubt I have the full story yet (I did have problems with folders that
> were not filled with anything else before).

The manage_beforeDelete() and manage_afterAdd() events are propagated to 
subfolders, meaning that a whole lot of objects have to wake up every 
time you add or remove something.  Or it might be manage_afterClone() 
being called, which is very similar.  You could add a temporary print 
statement to ObjectManager.manage_after* to see just how often the 
methods are getting called.

The solution?  Event management.  Make objects register to receive events.

Shane


_______________________________________________
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope )

Reply via email to