[ZODB-Dev] Heavy size increasing of database after adding an object

Tim Peters tim at zope.com
Wed Dec 1 11:54:47 EST 2004


[Manuel Markwort]
> I adding my own ZClass Objects in the data.fs. After adding a new
> instance of those objects the database size increases heavily in
> opposition of the real object size. Before I add the instance to the
> database it's size is 26.6MB, after commiting the transaction the size is
> about 26.9MB. After packing the database the size is 26.6MB again. What
> happened in the background? It is possible to avoid this high increasing
> of the database without packing after adding the object?

Sorry, there's really not enough info here to say much.  Start here:

    http://zope.org/Wikis/ZODB/FileStorageBackup

to learn about the structure of a FileStorage file.  It's pretty simple,
essentially some layers of admin info around a sequence of object pickles.
If your .fs grew by 0.3MB because of a transaction, then it's surely the
case that you modified objects the sum of whose pickles adds up to about
0.3MB.  That could be because you have non-persistent objects as attributes
of your persistent objects, so that they have to be pickled in full too --
but, again, there's not enough info here to guess anything.

The link above will tell you how to use fsdump.py.  Use that to learn
exactly which objects were modified by the transaction.



More information about the ZODB-Dev mailing list