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

Chetan Mehrotra commented on OAK-3600:
--------------------------------------

Lucene index also takes similar approach. {{IndexTracker}} tracks changes in 
index definitions and refreshes the state if any change is detected. It 
registers an Observor to listen for changes in index definitions which have 
been used

> Cache property index definitions
> --------------------------------
>
>                 Key: OAK-3600
>                 URL: https://issues.apache.org/jira/browse/OAK-3600
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: core, query
>    Affects Versions: 1.3.9
>            Reporter: Joel Richard
>              Labels: performance
>
> At the moment, most of the time of the execution plan calculation (often 70%) 
> is spent in PropertyIndex.getCost. Therefore, it would make sense to cache 
> the property index definitions in a map<property name, plan> which avoids all 
> unnecessary traversal/repository operations.
> This cache could either be attached to the session or expire after a few 
> seconds because the problem is not that createPlan is slow itself, but is 
> just called too often.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to