Stephan Richter wrote:
On Monday 06 June 2005 14:31, Kevin Dangoor wrote:
1) the intid utility is used to maintain an object<->integer ID
mapping for use as a document ID in catalog indexes. Given that the
objects already have an integer ID, _p_oid, with a convenient API for
moving back and forth between object and ID, why maintain two more
btrees to hold this information?
Not all objects you want to index might be in the ZODB.
2) intid does not directly store an object pointer, but rather a
reference object. Is the purpose here to allow you to work with parts
of the result set without having to activate the original, potentially
large, objects? Are the reference objects the place you would likely
store metadata (I didn't see a facility in catalog itself for this)?
Yeah, I think this is the design goal. I think storing annotations on the
reference objects is probably the right choice.
Sorry, I missed the second part of your answer. You should not store meta data
on the reference objects. You should use the reference objects (or intids) as
keys into data structures storing meta data.
Jim Fulton mailto:[EMAIL PROTECTED] Python Powered!
CTO (540) 361-1714 http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
Zope3-users mailing list