[Zope-dev] Re: [ZODB-Dev] RFC: Multi-Databases

Jim Fulton jim at zope.com
Thu May 6 00:02:40 EDT 2004


Toby Dickenson wrote:
> (reply-to set to zodb-dev)
> 
> 
>>In the long term, this will allow is to *finally* support cross database
>>references.
> 
> 
> Your proposal describes an unfamiliar kind of reference. In unix filesystem 
> terms, it mixes characteristics of hard links and symbolic links.

That's right, it's not like a file-system hard link or a soft link.

...

> Right now I cant think of a use case for this new type of reference (either in 
> a filesystem or zodb database).  Can you give some examples?

Yes. I want to create a reference from one object to another in Python code.
(It's much easier to do that in Zope 3, for various reasons I won't go into
here.)  At the Python level, I don't want to have to worry about whether the
objects are in separate databases.

Now, the fact that the reference is weak is a definate disadvantage. I'd rather
have a strong reference, but that makes the problem much harder to solve. There
are applications where weak references are a step forward.

An alternative model is to require that the reference isn't direct but has
weak references (as in Python weak reference) semantics). That is, rather than
saying:

    self.x = foo

requiring:

    self.x = persistent.wref.ref(foo)


Anyway, you ask a reasonably question. Let's continue this discussion after
I write a proposal for cross-database references.

Jim

-- 
Jim Fulton           mailto:jim at zope.com       Python Powered!
CTO                  (540) 361-1714            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org



More information about the Zope-Dev mailing list