[
https://issues.apache.org/jira/browse/OAK-638?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13583077#comment-13583077
]
Jukka Zitting commented on OAK-638:
-----------------------------------
bq. Should create a utility class that is shared?
Yes, I think that would be a good idea as it would allow us to better discuss
and develop the rebase operation independently of the underlying storage model.
bq. What are the missing parts?
Some things that I haven't thought through yet. Basically it's still just a
quick draft I hacked together to make things work. Michael has better
understanding of all the potential conflict scenarios and ways to resolve them,
so I'd appreciate especially his thoughts on the implementation. And of course
anyone else's review of the code would be welcome, as I wouldn't be surprised
if I was still missing some essential bits.
> Avoid branch/merge for small commits
> ------------------------------------
>
> Key: OAK-638
> URL: https://issues.apache.org/jira/browse/OAK-638
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: core
> Reporter: Marcel Reutegger
> Priority: Minor
> Attachments: OAK-638.patch, OAK-638.patch
>
>
> The branch/merge features on the MicroKernel were initially introduced to
> stage changes of large commits. Currently oak-core creates a branch even for
> small changes like updating a property. I think this introduces quite some
> overhead for scenarios with highly concurrent updates. E.g. think of a
> twitter like application or a forum with comments. Well, basically user
> generated content. These update tend to be rather small (couple of nodes) but
> frequent and concurrent.
> Right now oak-core always does:
> - MK.branch()
> - MK.commit() to branch
> - MK.merge()
> For small commits, it ideally should do:
> - MK.commit() to trunk
--
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