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

Marcel Reutegger commented on OAK-1980:
---------------------------------------

In my view the actual index implementation is not relevant for this discussion. 
The main benefit I see with non-root index definitions is that they are closer 
to the content they index and allow use cases that are difficult to implement 
with only index definitions under the root. E.g. consider a larger system that 
has many users or tenants where each of them can only see their content. If 
their content is part of a single big index under the root, then the query 
engine will have to filter out many nodes returned by the index because of 
access control, resulting in poor query performance. Such a query limited to 
the content of a user/tenant would be more efficient if it was able to use an 
index that just covers the users/tenants content.

I guess the reason why this issue is still open means above use case isn't that 
important at the moment. Feel free to close the issue WONTFIX.

> Use index on non-root node
> --------------------------
>
>                 Key: OAK-1980
>                 URL: https://issues.apache.org/jira/browse/OAK-1980
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: property-index
>            Reporter: Marcel Reutegger
>            Assignee: Davide Giannella
>         Attachments: OAK-1980.patch
>
>
> Oak is able to maintain indexes on any location in the hierarchy. However the 
> lookup for most index implementations only make use of an index under the 
> root node. There are various TODOs in the code regarding this, e.g. in 
> PropertyIndex. Looking up an index along the filter path adds some additional 
> cost, but should be within reasonable bounds.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to