Several years ago, we added a "tid" cache, that cached current  
ttransaction ids (tids) for objects.  The intent was to speed both  
stores and full cache verification.  We've since realized that full  
verification is a bad idea for databases large enough that caching is  
needed.  It's not clear how much benefit the cache provides when  
storing data.

Recently, we've had multiple serious failures due to memory errors  
occurring when the cache became too big. I recently made a change that  
makes the errors somewhat less likely to occur (by using a BTree  
rather than a dictionary), but the cache can still grow unacceptably  

Unless there are strong objections, I'm going to remove the tid cache  
in ZODB 3.8.1.


Jim Fulton
Zope Corporation

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -

Reply via email to