[Zope-Annce] [Ann] "ReadCommitted" transaction isolation level

Dieter Maurer dieter@handshake.de
Thu, 20 Mar 2003 23:33:34 +0100


When you are plagued by "ReadConflictError"s, you might be interested
in the "ReadCommitted" transaction isolation level.

Usually, a transaction receives a "ReadConflictError" when it
tries to load an object from ZODB that has been modified since
transaction start. Usually, the application will abort the transaction
in this case and restart it.

When transactions are long or writes a frequent, "ReadConflictError"s
can become a plague. That's when the "ReadCommitted" transaction
isolation level can step in.
Rather than raising a "ReadConflictError", it reads the state
as it was when the transaction started, provided the storage
supports "undo". If this is not the case, a "ReadConflictError"
is raised.

You find a patch (against Zope 2.6.1) that provides the "ReadCommitted"
isolation level at

  <http://www.dieter.handshake.de/pyprojects/zope>



Dieter