I tried this setup to get the composite node store going but I always run into 
a catch-22.

In order for Sling to get up and running I need to create a Segment Node Store 
Service.
That said for the Composite Node Store I need a Global and Secondary Node Store
Provider. That said I cannot create a Global Node Store Provider that uses the
Global Node Store.

I tried to use ’standBy’ on the SegmentNodeStoreService but that does not do 
what it says - register the Node Store as Node Store Provider (not sure if this 
is a bug) but also the flag on the SegmentNodeStoreFactory does not adhere to 
that (registers the Segment Store as NodeStoreProvider either way).

This is my current configuration regarding the Composite Node Store:

1. Create a Segment Node Store for global

"org.apache.jackrabbit.oak.segment.SegmentNodeStoreService~global": {
 "service.ranking:Integer": "100",
 "name": "Oak-Segment-Tar",
 "repository.home": "launcher/repository-global",
 "host": "localhost"
},

2. Create a Secondary Segment Node Store using the factory:

"org.apache.jackrabbit.oak.segment.SegmentNodeStoreFactory~libs": {
 "repository.home": "launcher/repository-libs",
 "customBlobStore": false,
 "role": "composite-mount-libs",
 "nodeDeduplicationCache.size": 0
},

3. Create a Mount Info Provider for libs:

"org.apache.jackrabbit.oak.composite.MountInfoProviderService": {
 "mountName": "libs",
 "readOnlyMount": false,
 "pathsSupportingFragments": [
   "/oak:index/*$"
 ],
 "mountedPaths": [
   "/libs",
   "/apps",
   "/jcr:system/rep:permissionStore/oak:mount-libs-crx.default"
 ]
},

4. Finally create a Composite Node Store:

"org.apache.jackrabbit.oak.composite.CompositeNodeStoreService": {
 "seedMount": "libs",
 "enabled": true,
 "enableChecks": false
}

In this scenario the Composite Node Store is deferred because the missing 
Global Node Store Provider.

- Andy

> On Mar 30, 2020, at 8:36 AM, Andreas Schaefer <schaef...@me.com.INVALID> 
> wrote:
> 
> Hi
> 
> I was wondering if there is some further documentation or examples available 
> than just https://jackrabbit.apache.org/oak/docs/nodestore/compositens.html 
> <https://jackrabbit.apache.org/oak/docs/nodestore/compositens.html> ?
> 
> I would love to bootstrap Sling with two separate repositories.
> 
> Cheers - Andy Schaefer

Reply via email to