jackrabbit-oak-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas Mueller <muel...@adobe.com>
Subject Re: oak-api and move operations
Date Tue, 03 Apr 2012 10:35:05 GMT

>>>There is not more merging
>>> to be done by the Microkernel as it already does.
>> Currently, commit calls can be easily synchronized in the MicroKernel
>> implementation. If you want to achieve a similar isolation with branch()
>> and merge(), then a branch() would block other commits (and branch
>> until the merge() call.
>I can't follow you here. Why would that be necessary?

To achieve the same isolation as we have now.

>That would work I guess. One remaining problem is
>> then the ability to "undo" (rollback) a branch. I guess there should be
>> method for that ("revert").
>Why do we need a rollback?

To undo a branch, so that others can commit.

>Another remaining problem is that each
>> MicroKernel implementation would need to support transactions that span
>> multiple calls (similar to 2-phase commits or transaction savepoints).
>Again why?

Branching might not be easy to support in the MicroKernel implementation.
If branching is actually implemented as "start a transaction", then a
commit (within a branch) could be implemented as a savepoint. A commit in
a branch wouldn't result in transaction commit.


View raw message