[ 
https://issues.apache.org/jira/browse/OAK-536?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13555065#comment-13555065
 ] 

Michael Dürig commented on OAK-536:
-----------------------------------

I implemented another approach which Marcel sketched in a private discussion 
yesterday: https://github.com/mduerig/jackrabbit-oak/commits/OAK-536-2

The idea is, that {{Microkernel.rebase()}} only handles the most common case 
where there are no conflicts. If there are conflicts, it will only rebase the 
parts of the content tree which do not conflict and indicate the conflict 
status in its return value. In the case of a conflict, oak-core needs to 
resolve them. 

This is a bit of a hybrid of the current solution where rebasing occurs in oak 
core no matter whether there are conflicts or not and the [previous 
POC|https://github.com/mduerig/jackrabbit-oak/commits/OAK-536] where rebasing 
and conflict annotation is done in the Microkernel. 


                
> Implement rebase for branches in Microkernel
> --------------------------------------------
>
>                 Key: OAK-536
>                 URL: https://issues.apache.org/jira/browse/OAK-536
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: mk, mongomk
>            Reporter: Michael Dürig
>         Attachments: OAK-536.patch, OAK-536.patch
>
>
> As discussed at length in OAK-464 and on the 
> [list|http://markmail.org/message/4xwfwbax3kpoysbp], having the ability to 
> rebase Microkernel branches on top of a different revision than the one the 
> branch was originally branched from, helps for resolving conflicts. Both in 
> the distributed cluster case and for concurrent commits from user sessions. 
> Since we didn't come to a conclusion where this functionality should be best 
> implemented, I did a [POC 
> implementation|https://github.com/mduerig/jackrabbit-oak/commit/42e8d60132ca2207c03fa79fd1ddca22406fc58a]
>  for oak-core in OAK-464. In order to make an informed decision on how to 
> proceed we should also POC this functionality for the Microkernel.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to