[ZODB-Dev] ZODB4 project plan

Barry A. Warsaw barry@zope.com
Wed, 27 Nov 2002 09:02:16 -0500


>>>>> "GvR" == Guido van Rossum <guido@python.org> writes:

    >> It's one of the main reasons why we chose to use the ZODB, even
    >> though it lacked indexing, queries, GUI management tools,
    >> object migration..
    >> Can you explain how you use them?
    >> By using undo()? Or are we talking about something else here?

    GvR> Yes, we're definitely talking about something else.  Undo
    GvR> uses ZODB transactions, not ZODB versions.

    GvR> So far, in this thread, I've seen not one person saying that
    GvR> they use ZODB versions for anything at all.  A few posters
    GvR> claimed that they can think of a use case, but that sounds
    GvR> like a typical YAGNI.

    GvR> Death to ZODB versions.  Long live transactional undo.

BTW, I'm wondering if multi-version concurrency control is going to
give people the consistent view of the database they currently use
versions for?  For example, if you were to implement a lock instead of
versions, you could timestamp the lock and if you wanted to read
object before the locked date, you could do it with mvcc.  I think
that would give you most of the benefits of versions, since once the
locks are removed, you'd still have to resync and resolve any
conflicts in your pre-lock objects.

-Barry