jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chetan Mehrotra (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-6734) IndexPlan: add supportsPathRestrictions
Date Wed, 27 Sep 2017 16:25:00 GMT

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

Chetan Mehrotra commented on OAK-6734:

I think we should keep it simple for now to start with

# Query has path restriction
## Lucene support path restriction, 1 lucene plan returned. In this case traversing index
is not considered
## 2 lucene plans - 1 support path restriction and 1 not. In that case we keep state as is
i.e. comparison based on numDocs based cost
# Query does not have path restriction
## Traversing index should not be considered in any case
## 2 lucene plans. Standard cost based comparison

With this 1.2 we maintain status quo and still address current issues we are facing where
ambiguity develops between lucene and traversing index. Later we can improve case for 1.2

> 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
> 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

View raw message