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

Chetan Mehrotra commented on OAK-6082:
--------------------------------------

*Tracking oak:index nodes*

This service would also be useful for OAK-5511. It can determine if a give path 
has oak:index node or not by making use of index path information. As this is a 
critical operation (i.e. lookup for oak:index node). It can build this info 
upon first call and then use an observer to keep track of changes under 
_/oak:index/nodetype/:index/oak:QueryIndexDefinition_ and updates its state if 
any change occurs there. 

This should work fine if number of such oak:index nodes is small. For cases 
where such oak:index nodes are very large then we should look into marking 
parent nodes with some hidden property to indicate that it has oak:index node. 
Once such a support is implement the implementation here can switch to that

> Service to determine index paths
> --------------------------------
>
>                 Key: OAK-6082
>                 URL: https://issues.apache.org/jira/browse/OAK-6082
>             Project: Jackrabbit Oak
>          Issue Type: Task
>          Components: indexing
>            Reporter: Chetan Mehrotra
>            Assignee: Chetan Mehrotra
>            Priority: Minor
>             Fix For: 1.8
>
>
> It would be useful to have an {{IndexPathService}} which would provide 
> # List of all index paths
> # Determine if oak:index node is present under given path 
> The service would make use of nodetype index for {{oak:QueryIndexDefinition}} 
> for determining index paths. 
> This service can then be used to enable improvements like 
> * listing report for all indexes (OAK-6080), 
> * Reduce lookup for oak:index nodes



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

Reply via email to