Tomek Rękawek commented on OAK-4655:

I attached a [slightly modified|^OAK-4655.v2.patch] version that allows to set 
any {{role}} for the NodeStoreProvider (using {{nsProvider.role}} property). 
It's consistent with my proposal to update SegmentNodeStoreService in OAK-4834.

[~egli], could you take a look on the change and say if you are ok with it? If 
so, I'll merge the patch, this feature would be very useful in many different 
areas of Oak. It also disabled by default, so I guess it's quiet safe to have 
it committed.

> Enable configuring multiple segment nodestore instances in same setup
> ---------------------------------------------------------------------
>                 Key: OAK-4655
>                 URL: https://issues.apache.org/jira/browse/OAK-4655
>             Project: Jackrabbit Oak
>          Issue Type: New Feature
>          Components: segment-tar, segmentmk
>            Reporter: Chetan Mehrotra
>            Assignee: Stefan Egli
>             Fix For: 1.6
>         Attachments: OAK-4655.v1.patch, OAK-4655.v2.patch
> With OAK-4369 and OAK-4490 its now possible to configure a new 
> SegmentNodeStore to act as secondry nodestore (OAK-4180). Recently for few 
> other features we see a requirement to configure a SegmentNodeStore just for 
> storage purpose. For e.g.
> # OAK-4180 - Enables use of SegmentNodeStore as a secondary store to 
> compliment DocumentNodeStore
> #* Always uses BlobStore from primary DocumentNodeStore
> #* Compaction to be enabled
> # OAK-4654 - Enable use of SegmentNodeStore for private mount in a 
> multiplexing nodestore setup
> #* Might use its own blob store
> #* Compaction might be disabled as it would be read only
> # OAK-4581 - Proposes to make use of SegmentNodeStore for storing event queue 
> offline
> In all these setups we need to configure a SegmentNodeStore which has 
> following aspect
> # NodeStore instance is not directly exposed but exposed via 
> {{NodeStoreProvider}} interface with {{role}} service property specifying the 
> intended usage
> # NodeStore here is not fully functional i.e. it would not be configured with 
> std observers, would not be used by ContentRepository etc
> # It needs to be ensured that any JMX MBean registered accounts for "role" so 
> that there is no collision
> With existing SegmentNodeStoreService we can only configure 1 nodestore. To 
> support above cases we need a OSGi config factory based implementation which 
> enables creation of multiple SegmentNodeStore instances (each with different 
> directory and different settings)

This message was sent by Atlassian JIRA

Reply via email to