Michael Dürig created OAK-1056:
----------------------------------

             Summary: Transient changes contributed by commit hooks are kept in 
memory
                 Key: OAK-1056
                 URL: https://issues.apache.org/jira/browse/OAK-1056
             Project: Jackrabbit Oak
          Issue Type: Improvement
          Components: core
            Reporter: Michael Dürig


With the {{KernelNodeStore}}, transient changes contributed by commit hooks are 
currently kept in memory instead of being written ahead to the private branch. 
The reason for this is that we need to be able to undo such changes if a commit 
hook later in the process fails the commit. Doing this efficiently would need 
some support from the persistent layer. Either the ability for branching from a 
branch or the ability to roll back to a previous state. 

See the TODOs in {{KernelNodeState.builder()}}, which returns a 
MemoryNodeBuilder (instead of a KernelNodeBuilder when the current state is on 
a branch. This is the workaround to avoid branching form a branch and has the 
effect that commit hooks currently run against a MemoryNodeBuilder and limits 
the amount of changes commit hooks can add.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to