On Mon, 24 Apr 2006 22:17:17 +0300, Dieter Maurer <[EMAIL PROTECTED]> wrote:

Arve Knudsen wrote at 2006-4-23 22:44 +0300:
I already use ZODB as a local persistency service for my Python
application, now I'm considering ZEO as a distributed data source. The
thing is I don't want to keep my local object cache synchronized at all
times with the remote database, my application should only synchronize in a controlled operation and then work with the disconnected representation.

I fear the ZODB is not made for this use case.

Synchronization is in the form of invalidation messages
deeply embedded into the ZODB.
You may simply delay the invalidation messages and
thereby delay synchronization. However, you will problably
suffer from the lack of prefetching support and the need
to synchronize any modification immediately with the ZODB.

Ok, thanks for clearing this up. I've given the problem some thought, and am presently considering a scheme where I cache the ZEO-served objects in a local ZODB in order to enable off-line work. How should I ensure local ownership of objects from the ClientStorage, by deep copying them?

For more information about ZODB, see the ZODB Wiki:

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

Reply via email to