[ZODB-Dev] Relstorage and over growing database.

Martijn Pieters mj at zopatista.com
Thu Nov 14 15:41:29 CET 2013


On Wed, Nov 13, 2013 at 9:24 AM, Jens W. Klein <jens at bluedynamics.com>wrote:

> Thanks Martijn for the hint, but we are using a history free database, so
> growing does only happen by deleted objects in our case.
>

Right, that is an important distinction.


> When in history free mode, is it possible to detect deleted objects at
> store-time? This way we could add the zoid at store time to a
> objects_deleted table in order to clean them up later.
>

No, because multiple references to an object might exist. There is no
reference counting in a ZODB, hence the intensive manual tree traversal job
when garbage collecting.


>  Another way to speed up graph traversal would be to store the
> object-references in a field of object_state. At the moment we have to read
> the pickle in order to get the referenced zoids. Storing additional -
> redundant - information might be not perfect, but it would allow to pack/gc
> the database without any knowledge about the state objects structure, i.e.
> using a stored procedure.
>

That sounds like a feasible idea, at least to me.


> I would like to know what the relstorage experts think about this ideas.
>

You may want to contact Shane directly, he *may* not be reading this list
actively.

-- 
Martijn Pieters
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.zope.org/pipermail/zodb-dev/attachments/20131114/00d872f5/attachment.html>


More information about the ZODB-Dev mailing list