jackrabbit-oak-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Dürig <mic...@gmail.com>
Subject Re: Effect of KernelRootBuilder update
Date Wed, 06 Feb 2013 16:55:35 GMT

On 16.11.12 13:00, Jukka Zitting wrote:
> Hi,
> On Fri, Nov 16, 2012 at 2:48 PM, Michael Dürig <mduerig@apache.org> wrote:
>> I was having a look at KernelRootBuilder.update() which saves pending
>> changes down to a branch in the Microkernel after a certain threshold in the
>> number of changes. I was wondering if this has any effect at all. The branch
>> is never merged back. Or is that branch "only" used as a persistent cache?
>> Since there is similar logic in RootImpl already, this might also be work in
>> progress. If so, I suggest to disable it for the time being.
> Yes, we can disable it.

I was looking into this again in order to use it for replacing the purge 
logic we have in RootImpl. The nice part about this would be that higher 
layers wouldn't need to care about node builders growing "too large" 
since they would be backed by a branch in the Microkernel. However, I 
don't see a way to integrate this with NodeStoreBranch without breaking 

> It's mostly an incomplete experiment at seeing whether we could get
> rid of the NodeStoreBranch feature entirely by pushing the existing
> RootImpl purge logic down below the NodeBuilder interface. Another
> rationale was to see how far we could go without having to rely on
> branches, as the MongoMK didn't yet support that feature.

Since we now have branches in the Microkernel I suggest, we remove this 
feature entirely. That is, remove the KernelNodeBuilder and 
KernelRootBuilder classes. Unless we want to further pursue getting rid 
of NodeStoreBranch, that is.


> I intentionally set the update limit high enough so that the
> functionality is only triggered in custom test cases and in normal use
> the much lower purge limit in RootImpl takes care of branch handling.
> BR,
> Jukka Zitting

View raw message