You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Marcel Reutegger (Jira)" <ji...@apache.org> on 2023/03/28 06:49:00 UTC

[jira] [Resolved] (OAK-10149) Rebase may be expensive with many siblings

     [ https://issues.apache.org/jira/browse/OAK-10149?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Marcel Reutegger resolved OAK-10149.
------------------------------------
    Fix Version/s: 1.52.0
       Resolution: Fixed

Merged PR.

> Rebase may be expensive with many siblings
> ------------------------------------------
>
>                 Key: OAK-10149
>                 URL: https://issues.apache.org/jira/browse/OAK-10149
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: documentmk
>            Reporter: Marcel Reutegger
>            Assignee: Marcel Reutegger
>            Priority: Minor
>             Fix For: 1.52.0
>
>
> In some cases DocumentNodeStore.rebase(NodeBuilder) can be expensive when a node is added to a parent that already has many children.
> There are a few other conditions that also need to be met to make the refresh expensive. Steps to reproduce are:
> Create a node structure with many child nodes and save
> Create a sibling to those many nodes, but not yet save
> Make further transient changes until the DocumentNodeStore creates an InMemory branch. A test can also force create this branch.
> Add further changes to the new node
> Rebase the current builder. Now the implementation reads all siblings of the new node, while it should only check if the added node already exists.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)