[ZODB-Dev] How to resync with current db

Dieter Maurer dieter at handshake.de
Thu Feb 3 14:25:23 EST 2005


Paolo Losi wrote at 2005-2-3 08:58 +0100:
> ...
>- transaction.commit() and begin() on a read only transaction
>   doesn't seem to work

You get hit by the loose coupling of connections to transactions
in ZODB 3.2:

  A connection is only registered with a transaction
  when the transaction modifies at least one object in the
  connection.

  If the connection is effectively read only, then the
  transaction does not know about it and the transaction
  methods do not have any effect on the connection.

Tim changed this for ZODB 3.3.

> ...
>Could be closing the connection and database (and loosing all
>the cache) an alternative viable solution?

The method "Connection._flush_invalidations" processes
and flushes the pending invalidations.

I think it is called in "Connection._setDB" (which in
turn is called in "open"). You probably should check
that I am right.

-- 
Dieter


More information about the ZODB-Dev mailing list