Alan Runyan wrote at 2008-1-23 13:32 -0600:
>each record in a catalog may have an object for each index/metadata attribute
>you are capturing. and possibly a few others. Each catalog entries contain
>ts of object per object being indexed. That is my understanding.
It does not completely fit reality.
There is no correspondence from catalogued objects to a single
or even many persitent objects in the catalog.
The catalog maintains a (non persistent) metadata record for
each catalogued object -- a single one, for all metadata fields.
These records (they are tuples) are maintained in "IOBucket"s.
An "IOBucket" can have up to 60 entries.
Each index maintains some information for a catalogued object --
but not in individual (object specific) objects. Instead
persistent objects (such as "IITreeSet|IOBTree|OIBTree"s) are
used to combine the information about many (about 40 to 120) objects.
For more information about ZODB, see the ZODB Wiki:
ZODB-Dev mailing list - ZODB-Dev@zope.org