[ https://issues.apache.org/jira/browse/OAK-3403?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15355162#comment-15355162 ]
Thomas Mueller commented on OAK-3403: ------------------------------------- The patch in general looks good. There are a few TODOs that would need to be addressed (for example OAK-3757). Unfortunately the patch introduces lots of wiring, not sure how to avoid that. > Another option would be to have some config on index indicating that it is > enabled for multiplexing Or, as an alternative, have some configuration that indicates it is explicitly disabled, that could be one property per index. > Multiplexing store support in Property indexes > ---------------------------------------------- > > Key: OAK-3403 > URL: https://issues.apache.org/jira/browse/OAK-3403 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: query > Reporter: Chetan Mehrotra > Assignee: Chetan Mehrotra > Attachments: OAK-3403-v1.patch > > > In Oak one can define an index anywhere in the repository under a special > node name {{oak:index}}. For e.g. if you want a property index for > {{sling:resourceType}} at root level then you can create the index at > /oak:index/resourceType and this index would store the index content at > /oak:index/resourceType/:index. > # Writing - At time of commit the IndexEditor would need to decide where the > indexed content for a given path should be stored. To start with it can make > use of PathToStoreMapper to decide which node to use the indexed content. For > e.g. for /libs the indexed content is stored under :index-pr and for /content > :index-sr is used. This is simpler for PropertyIndex where IndexStoreStrategy > can be passed the right node > # Reading - At time of reading the QueryIndex implementation would need to > provide a union cursor which can perform lookup from all such store > directories for a given index. > *Open Items* > # Supporting unique indexes > # Introducing new oak:index - Node under oak:index node are special. > Depending on parent path it might be possible that they would have to be > created in both repositories. For e.g. /oak:index would have to be present in > both PR and SR. While /content/foo/oak:index can live only in SR. -- This message was sent by Atlassian JIRA (v6.3.4#6332)