[
https://issues.apache.org/jira/browse/OAK-7758?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16635159#comment-16635159
]
Marcel Reutegger commented on OAK-7758:
---------------------------------------
The call to the observer(s) is not done anymore in
{{CompositeNodeStore.merge()}} directly. So, I think the lock is not needed
anymore if it was introduced just for OAK-6455. But then I don't quite
understand all the details of {{CompositeNodeStore.merge()}}. It also has a
code block with the comment 'merge the partial builders'. There it may also
merge changes, which I think are not reported correctly by the
{{CompositeNodeStore}}. It currently simply relays the callbacks from an
{{Observer}} on the {{globalStore}}.
I guess my confusion is again whether the {{CompositeNodeStore}} is supposed to
have only a single writable global store or if it is also possible to compose
multiple writable node stores.
> Non-blocking CompositeNodeStore merges
> --------------------------------------
>
> Key: OAK-7758
> URL: https://issues.apache.org/jira/browse/OAK-7758
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: composite
> Reporter: Marcel Reutegger
> Priority: Major
> Fix For: 1.10
>
>
> The CompositeNodeStore serializes all merges with a lock. This prevents
> concurrent processing of merges by the DocumentNodeStore.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)