Mihai Ilinca wrote at 2006-1-26 15:10 +0200:
> ...
>Trough 'slave' I only do read operations at the moment. If I make changes to 
>the stored data trough the 'main' client, the 'slave' clients don't see it. 
>They only see the data as it was when the ClientStorage was constructed. If I 
>restart a 'slave' (the class gets constructed again), the changes are 
>visible. Basically, it's like having no Invalidation system whatsoever.
>
>What am I doing wrong here?

You are running the "asyncore" main loop in a separated thread?

If not, a client storage processes invalidation messages only
when used. Often the necessary objects are already in the ZODB cache
and the storage is not used.

Also note that you will see changes only at transaction boundaries.
Inside a transaction, you will never see any changes.

> ...
>"/home/packages/devel/binary/zodb/zodb3-3.4.0/debian/python2.4-zodb3/usr/lib/python2.4/site-packages/ZEO/ClientStorage.py"
> , line 79, in __getattr__
> ZEO.Exceptions.ClientDisconnected

The ZEO connection was closed.


-- 
Dieter
_______________________________________________
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zodb-dev

Reply via email to