jackrabbit-oak-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Dürig <mdue...@apache.org>
Subject Re: Consistency aka Isolation Level (was: OAK-638 Avoid branch/merge for small commits)
Date Wed, 06 Mar 2013 08:34:24 GMT


On 6.3.13 8:23, Marcel Reutegger wrote:
> Hi,
>
>> Just to further clarify, the approach where private branches are rebase
>> and the merged into trunk is not too different from what the initial
>> implementation of Microkernel.commit() (H2) tried to do: rebase and then
>> merge. The difference is, that we can "take rebase out of the lock" if
>> we perform it on a private branch.
>
> I have the impression you assume a specific implementation. some
> implementation could simply do what databases usually do and only
> synchronize (or lock) on the nodes they write to. concurrent writes
> in distinct areas of the repository will not block in this case.

No not really. AFAICT locking individual nodes would be an 
implementation variant of rebasing a private branch. That is, it has the 
same observable behaviour. I mentioned this already on my initial post 
on this [1]: " Note how commit is implemented in terms of branch and 
merge. I has not to be implemented that way but rather the observable 
behaviour should be like this."

[1] http://markmail.org/message/wtaarmdtgyf5lvjt

>
> regards
>   marcel
>

Mime
View raw message