[ZODB-Dev] How do I find out the size of a subtree of the object graph?

Jim Fulton jim at zope.com
Mon Sep 14 12:09:33 EDT 2009


On Mon, Sep 14, 2009 at 10:43 AM, David Glick <davidglick at onenw.org> wrote:
> On Sep 14, 2009, at 7:04 AM, Jim Fulton wrote:
>>
>> On Mon, Sep 14, 2009 at 7:10 AM, Chris Withers <chris at simplistix.co.uk>
>> wrote:
>>>
>>> Jim Fulton wrote:
>>>>
>>>> ZODB doesn't provide any direct support because it has no notion of
>>>> tree.
>>>
>>> Does it have any notion of object size on disk for a given object?
>>
>> Not directly, but you can do:
>>
>>  len(ob._p_jar.db().storage.load(ob._p_oid, '')[0])+42
>
>
> What's the extra 42 for?  Aside from life, the universe, and everything...

Database record header. There's also space for transaction meta data,
but that's amorized over an unknown number of records.

Jim

-- 
Jim Fulton


More information about the ZODB-Dev mailing list