You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-dev@jackrabbit.apache.org by Andreas Schaefer <sc...@me.com.INVALID> on 2020/03/30 15:36:44 UTC
Jackrabbit Composite Nodestore Example / Docu
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
Re: Jackrabbit Composite Nodestore Example / Docu
Posted by Andreas Schaefer <sc...@me.com.INVALID>.
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 <sc...@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
Re: Jackrabbit Composite Nodestore Example / Docu
Posted by Robert Munteanu <ro...@apache.org>.
On Mon, 2020-03-30 at 08:36 -0700, Andreas Schaefer wrote:
>
> I was wondering if there is some further documentation or examples
> available than just
> https://jackrabbit.apache.org/oak/docs/nodestore/compositens.html <ht
> tps://jackrabbit.apache.org/oak/docs/nodestore/compositens.html> ?
For reference, I have a working demo of the Sling Starter running with
the CompositeNodeStore at
https://github.com/apache/sling-org-apache-sling-starter/tree/feature/composite-node-store
See README-composite.md for the details.
Thanks,
Robert