It might also be nice to have this generate events. That is, the tracing storage should call zope.event.notify.

I intent in 3.8 or 3.9 to start having ZODB depend on zope.event. We really should have used events rather than adding the callback's we've added recently.


On Feb 25, 2007, at 3:19 AM, Adam Groszer wrote:

Hello Christian,

Gosh, that looks simple. A simple decorator pattern on the storage.

So I shall create a branch, something like
and start there?

Saturday, February 24, 2007, 8:00:40 PM, you wrote:


I'm pretty sure there are no hooks around that do what you need.

The methods you want to tap into would be


on the storages.

You might want to look into how the BlobStorage was created to make
yourself a "tracing storage" that can be wrapped around an existing
storage to allow usage with multiple other storages.

This could be a useful extensions to ZODB. If you go this way, I'd be happy to help out with some of the packaging mechanics and getting the
ZConfig parts fletched out.


Am Samstag, den 24.02.2007, 14:33 +0100 schrieb Adam Groszer:

I'm using ZODB in a GUI application, so outside of Zope.

I'm having performance problems. I'm already on the way of figuring
out what causes a lot of object load. getTransferCounts helped in
that. But now I would need something more detailed.

Are there any hooks or something to get detailed object load
Worst case I could hook into some methods of ZODB temporarly to
collect the data, but into which methods?

Any help or pointers are welcome.

Best regards,
 Adam                            mailto:[EMAIL PROTECTED]
Quote of the day:
Faith is believing in things when common sense tells you not to.
- George Seaton

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -

Jim Fulton                      mailto:[EMAIL PROTECTED]                Python 
CTO                             (540) 361-1714         
Zope Corporation   

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -

Reply via email to