jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tommaso Teofili (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-4566) Multiplexing store support in Lucene Indexes
Date Mon, 01 Aug 2016 13:05:21 GMT

    [ https://issues.apache.org/jira/browse/OAK-4566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15402005#comment-15402005

Tommaso Teofili commented on OAK-4566:

I think it may be worth trying Lucene's {{MultipleReader}} [1] which wraps multiple {{IndexReaders}}
and therefore one may rely on Lucene's built in support for that (although it's usually meant
for readers coming from the same {{Directory}}) by simply building the {{IndexSearcher}} on
top of the {{MultipleReader}} and avoid any post processing on the result set.

[1] : https://lucene.apache.org/core/4_7_0/core/org/apache/lucene/index/MultiReader.html

> Multiplexing store support in Lucene Indexes
> --------------------------------------------
>                 Key: OAK-4566
>                 URL: https://issues.apache.org/jira/browse/OAK-4566
>             Project: Jackrabbit Oak
>          Issue Type: New Feature
>          Components: lucene
>            Reporter: Chetan Mehrotra
>            Assignee: Chetan Mehrotra
>             Fix For: 1.6
> Similar to OAK-3403 we need support multiplexing store in Lucene indexes. This can be
done by having multiple directories under given index definition. 
> For e.g. currently the Lucene indexes for an index /oak:index/assetIndex are stored in
node /oak:index/assetIndex/:dir. For supporting multiple indexes which get stored in different
stores we can have structure like
> {noformat}
> /oak:index/assetIndex
>      + :oak:mount1-dir
>      + :dir
> {noformat}
> In above structure index content for paths which are part of mount1 would be store in
Lucene files stores under {{:oak:mount1-dir}} while the rest go in default location {{:dir}
> # *Writing* - At the time of indexing the {{LuceneIndexEditor}} should pick up correct
writer i.e. one which is mapped to right directory node in repository
> # *Reading* - For reading we would have one {{IndexSearcher}} per directory node and
then query would be executed against both and a joined cursor would be made

This message was sent by Atlassian JIRA

View raw message