[ZODB-Dev] Multi-version concurrency control

Jeremy Hylton jeremy at zope.com
Fri Sep 26 13:50:48 EDT 2003


On Fri, 2003-09-26 at 11:48, Christian Reis wrote:
> On Fri, Sep 26, 2003 at 11:41:27AM -0400, Jeremy Hylton wrote:
> > I've posted a first draft of the project plan in the Wiki.
> > http://www.zope.org/Wikis/ZODB/MultiVersionConcurrencyControl
> 
> Thanks, it's interesting writing.
> 
> Just as an "ignorant/innocent bystander" comment, it would be really nice if
> (at least part of) Dieter's work were usable in the implementation of
> MVCC - but I wonder if it's possible, or if his approach is incompatible
> or orthogonal to the one described in the Wiki.

There are some problems with Dieter's approach, as he's noted no the
list recently.  In particular, it's based on using timestamps rather
than transaction ids.  If you use timestamps, you've got problems on
fast machines and with ZEO where clock skew between client and server
could cause problems.  The patch also avoids changes to the storage API
or the ZEO cache, but both of these are important for achieving good
performance.

If you read the patch, it's actually fairly small.  It is helpful to
identify some of the places in the code where changes need to be made,
but we also need to revise some APIs to make it work with transaction
ids.

Jeremy





More information about the ZODB-Dev mailing list