[
https://issues.apache.org/jira/browse/JCR-3107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13126541#comment-13126541
]
Alex Parvulescu commented on JCR-3107:
--------------------------------------
added some logs in revision 1182824
> Speed up hierarchy cache initialization
> ---------------------------------------
>
> Key: JCR-3107
> URL: https://issues.apache.org/jira/browse/JCR-3107
> Project: Jackrabbit Content Repository
> Issue Type: Improvement
> Components: jackrabbit-core, query
> Reporter: Martin Böttcher
> Fix For: 2.3.2
>
> Attachments: JCR-3107.patch
>
>
> Initializing a workspace can take quite a long time if there is a big number
> of nodes and some search indexes involved. The reason is that the setup of
> the CachingIndexReader is processed using chunks of a certain size (actually
> 400K) in order to reduce the memory footprint. As soon as the number of
> documents exceeds this limit some operations (actually traversing complete
> indexes) are performed again and again.
> It seems that the current algorithm "initializeParents" in the
> CachingIndexReader class can't be optimized without increasing the memory
> consumption. Therefore it should be a promising approach to persist the
> "state" of this class (actually it's main member array and map) and reload it
> on startup.
> The "load" of the state can be done implicitly in the initializing phase of
> the cache. This is obvious. The correct point of time to call the "save"
> operation isn't obvious at all. I tried the "doClose" method of the class and
> it seems sufficient.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira