[ 
https://issues.apache.org/jira/browse/OAK-6585?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Davide Giannella closed OAK-6585.
---------------------------------

Bulk close for 1.7.7

> Allow to use patterns in the Mount#pathSupportingFragments
> ----------------------------------------------------------
>
>                 Key: OAK-6585
>                 URL: https://issues.apache.org/jira/browse/OAK-6585
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: composite, core-spi
>            Reporter: Tomek Rękawek
>             Fix For: 1.8, 1.7.7
>
>
> The pathSupportingFragments field allows to configure subtrees under which 
> the nodes with names containing {{oak:mount-MOUNT_NAME}} fragment are 
> redirected to a non-default mount.
> It's used when running Oak on composite node store - in this case, the 
> indexing data have to be split between different node stores and setting the 
> pathSupportingFragments to {{/oak:index}} allows to do this.
> However, in terms of the composite node store performance, this option is 
> pretty expensive. Setting it on a low-level path like {{/oak:index}} means 
> that all the node states below this path has to be wrapped with the 
> CompositeNodeState objects and we can't fallback to the native 
> Segment/DocumentNodeStates. For example, the node:
> {noformat}
> /oak:index/lucene
> {noformat}
> has to be composite, because it's children may belong to the default 
> ({{:index}}) or non-default store ({{:oak:mount-libs-index}}. However the 
> children themselves doesn't need to be wrapped anymore.
> In order to improve this, we should support patterns in the 
> {{pathSupportingFragments}} entries. The pattern is a normal path, but 
> supporting two special characters:
> * {{*}} - matches a sequence of characters different than {{/}},
> * {{$}} - matches the end of the path.
> Then, we can define the pathSupportingFragments with the following pattern:
> {noformat}
> /oak:index/*$
> {noformat}
> For example, it'll match following paths:
> {noformat}
> /oak:index/uuid
> /oak:index/lucene
> {noformat}
> but not these:
> {noformat}
> /oak:index
> /oak:index/uuid/:index
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to