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 "Davide Giannella (JIRA)" <ji...@apache.org> on 2019/06/04 15:34:05 UTC
[jira] [Updated] (OAK-7254) Indexes with excludedPaths, or
includedPaths should not be picked for queries without path
[ https://issues.apache.org/jira/browse/OAK-7254?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Davide Giannella updated OAK-7254:
----------------------------------
Fix Version/s: 1.16.0
> Indexes with excludedPaths, or includedPaths should not be picked for queries without path
> ------------------------------------------------------------------------------------------
>
> Key: OAK-7254
> URL: https://issues.apache.org/jira/browse/OAK-7254
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: lucene, query
> Reporter: Thomas Mueller
> Assignee: Thomas Mueller
> Priority: Critical
> Fix For: 1.14.0, 1.16.0
>
>
> Queries that don't have a clear path restriction should not use indexes that have excludedPaths or includedPaths set, except in some exceptional cases (to be defined).
> For example, if a query doesn't have a path restriction, say:
> {noformat}
> /jcr:root//element(*, nt:base)[@status='RUNNING']
> {noformat}
> Then an index that has excludedPaths set (for example to /etc) shouldn't be used, at least not if a different index is available. Currently it is used currently, actually in _favor_ of another index, if the property "status" is commonly used in /etc. Because of that, the index that doesn't have excludedPath has a higher cost (as it indexes the property "status" in /etc, and so has more entries for "status", than the index that doesn't index /etc).
> The same for includedPaths, in case queryPaths isn't set to the same value(s).
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)