Hi
Ruben and I want to setup a Sling 12 instance with a composite node store where
/libs and /apps is in a read only repository and the rest in a read/write repo
(general).
I tried several approaches but for now I already fail by just trying to create
a composite node store.
This is my most promising approach:
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
}
This setup fails because there is no global node store and therefore the
composite node store is not created.
When I create a Segment Node Store Factory Service for a global node store the
composite node store is activated but still all changes are made in the global
node store.
When I start sling with just a global node store and then create a symbolic
like from the global NS to the segment node store factory name (appended role)
then Sling is not starting correctly.
Cheers - Andy