[ZODB-Dev] Commit or lock object accross transactions

Jeremy Hylton jeremy at zope.com
Wed Jul 16 16:43:28 EDT 2003


On Wed, 2003-07-16 at 11:20, Roché Compaan wrote:
> * Christian Reis <kiko at async.com.br> [2003-07-16 17:10]:
> > On Wed, Jul 16, 2003 at 04:02:54PM +0200, Roché Compaan wrote:
> > > How does one ensure that modifications to an object stored in ZODB is
> > > immediately visible to all transactions on all ZEO clients or is it
> > > easier to lock that object so that other transactions cannot modify that
> > > object.
> > 
> > To make modifications `visible' to all transactions, you need to commit
> > the change and have all other transactions invalidate their local caches
> > (calling something like sync(), though I think you can be finer-grained
> > than that).
> 
> The problem with this is that their might be legitimate transactions in
> process on other clients.

A client that has a transaction in progress will not see the changes
committed by another client until the transaction finishes.  Changes
only become visible at transaction boundaries.

Jeremy





More information about the ZODB-Dev mailing list