This is a ZODB 3.4 version of the patch I previously posted last June:

The following patch may be helpful to some of you for debugging. It
collects in memory information about objects when they are loaded
from the ZODB, so that when a ReadConflictError is raised, you can
not only display the oid but also the chain of objects (and their id)
that lead to it, in effect giving you its path.

There's a "log" that you can uncomment to see all objects loaded.

Works on ZODB 2.6 too IIRC. Or the changes are trivial.

Feedback welcome.
Some people have reported infinite loops starting zopectl debug, but I haven't had time to dig.


Attachment: zodb-oid-debug.z28.patch
Description: Binary data

Florent Guillaume, Nuxeo (Paris, France)   Director of R&D
+33 1 40 33 71 59   [EMAIL PROTECTED]

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -

Reply via email to