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/10/03 07:23:00 UTC
[jira] [Commented] (OAK-6734) IndexPlan: add
supportsPathRestrictions
[ https://issues.apache.org/jira/browse/OAK-6734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16189347#comment-16189347 ]
Thomas Mueller commented on OAK-6734:
-------------------------------------
[~catholicon] and [~chetanm] thanks a lot! That resolves the immediate problem.
However, I don't view that as the best or final solution. Right now, this is "rule based index selection", and (partially) no longer "cost based". In my view, this is incorrect in some cases, risky, as it can backfire.
For example, right now, assuming there is a property index and a Lucene index. As the cost of the Lucene index is higher (the property index scales the cost to the path, the Lucene index doesn't), the property index is used, which isn't correct.
So, I don't think this is resolved correctly. I will open a new issue.
> IndexPlan: add supportsPathRestrictions
> ---------------------------------------
>
> Key: OAK-6734
> URL: https://issues.apache.org/jira/browse/OAK-6734
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: query
> Reporter: Thomas Mueller
> Assignee: Vikas Saurabh
> Fix For: 1.8, 1.7.9
>
>
> Some indexes support path restrictions (for example Lucene indexes, if configured to do so). For such cases, the cost of using the index is at most the cost of traversing.
> There are two ways to solve this: (1) the index itself could (somehow) ask the counter index about the estimated number of nodes for that path. (2) the query engine can do that itself, so that the index doesn't need to implement this logic.
> Let's do approach (2), and add a method supportsPathRestrictions to the IndexPlan interface. If it returns false (default), the behavior is the same as right now. If it returns true, then the cost of the index is adjusted to the estimated number of nodes in this path.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)