On Feb 14, 2008, at 7:21 AM, Binger David wrote:

On Feb 13, 2008, at 11:28 PM, Paul Winkler wrote:

  (Jim wrote)
Catalogs and session data change much faster than content. It makes sense to pack these more frequently. On large system, it provides the ability to
spread load over multiple servers, if necessary.

Also, as I understand it, you can get more benefits from the "regular
content" ZODB cache if you're not constantly moving tons of catalog
data through it, so there's a performance win

It seems like all of these potential advantages are available through
the use of multiple storages, but none of them really require database-level
support for cross-storage references.    On the other hand, it seems
clear that cross-storage references make the system as a whole
(software + people) less reliable.

I don't agree in general.

Perhaps I misunderstand, but low-level cross-site references seem like "secret" weakrefs. Maybe we'd be better off if they were explicit, higher- level objects,
used and dereferenced intentionally where required.

I don't object to this approach. I'll note that we had an approach like this before for Zope (mounts) and it had plenty of disadvantages of it's own, including injecting Zope-specific code into ZODB.

If someone can make something like this work without modifying ZODB, I won't object.

I think it would be easier to make the current multi-database approach a bit more explicit. I'll probably do that.


Jim Fulton
Zope Corporation

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -  ZODB-Dev@zope.org

Reply via email to