On Thu, 2016-09-22 at 12:49 +0000, Tomek Rekawek wrote:
> Hi,
> 
> I’ve looked into this issue. I think it’s caused by the fact that the
> squeeze() method sometimes doesn’t wrap the passed node state with
> MemoryNodeStates, but return it as-is. I tried to wrap the state
> unconditionally in the initializers and it fixed the issue.
> 
> Michael, Robert - do you think [1] is an acceptable solution? If so,
> I’ll create a proper JIRA and merge the code.
> 
> Regards,
> Tomek
> 
> [1] https://github.com/trekawek/jackrabbit-oak/commit/cf3d73
> 

That looks correct to me, although I may be missing some finer points.

Only thing I'm wondering is whether there is a scenario where
performance would be greatly impacted since the NodeState contains lots
of entries _and_ it's not a MemoryNodeState, so the newly added wrap
method would basically copy everything.

Upgrades maybe?

Robert

Reply via email to