You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Thomas Mueller (JIRA)" <ji...@apache.org> on 2017/04/25 06:35:04 UTC

[jira] [Commented] (OAK-6123) Filter documents not matching path restriction in LucenePropertyIndex even when evaluatePathRestriction isn't set

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

Thomas Mueller commented on OAK-6123:
-------------------------------------

That's true, it can be done in the query engine. 

If the index implementation returns an iterator that makes entries unique (avoid duplicates), then it would be better to do filtering in the index implementation however. But I think that's not the case, except for the AggregateIndex? The AggregateIndex is not as important however.

> Filter documents not matching path restriction in LucenePropertyIndex even when evaluatePathRestriction isn't set
> -----------------------------------------------------------------------------------------------------------------
>
>                 Key: OAK-6123
>                 URL: https://issues.apache.org/jira/browse/OAK-6123
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: lucene
>            Reporter: Vikas Saurabh
>            Assignee: Vikas Saurabh
>            Priority: Minor
>             Fix For: 1.8
>
>
> It's recommended to use {{evaluatePathRestriction}} on lucene index defs when the queries designed to be backed by that index would use path restriction heavily.
> But, since setting {{evaluatePathRestriction}} increases size of index, the choice to set it up needs to be thought out clearly.
> Currently, without {{evaluatePathRestriction}}, all the results which aren't part of path restriction in query are filtered in query-engine - which ends up loading the node from repository before filtering.
> We should be able improve the situation quite a bit by doing path filtering inside {{LucenePropertyIndex}}/{{LuceneIndex}}. Note, it's not a substitute of {{evaluatePathRestriction}} - just an optimization for cases where we don't want to set it and utilize path restrictions at times.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)