On Tue, Jun 22, 2010 at 4:58 AM, Nitro <ni...@dr-code.org> wrote:
> Hello,
> I'm writing a custom data manager. The data manager should execute before
> the connection's data manager.

I don't know what that means.

> So I provided the "sortKey" method. This
> works fine for the usual commit().

In particular, sortKey exists to address a deadlock that
can occur in 2-phase commit.


> This means for a sequence such as
> transaction.begin()
> transaction.get().join( myDataManager )
> transaction.savepoint()
> transaction.rollback()
> transaction.commit()
> the data managers are not sorted unless commit is encountered. If I move
> the sorting code to the join() method instead, I get the proper search
> order.
> Is this a bug?

No. sortKey is intentionally used just for commits.

Why do you want savepoints to execute in sortKey order?


Jim Fulton
For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -  ZODB-Dev@zope.org

Reply via email to