Hi, thanks for your advice. I used JConsole to inspect the start. Here is the Stacktrace where the time is spent on startup. Is there any chance to decrease this process duration?
org.apache.jackrabbit.core.query.lucene.CachingIndexReader$CacheInitializer$2.collect(CachingIndexReader.java:482) org.apache.jackrabbit.core.query.lucene.CachingIndexReader$CacheInitializer.collectTermDocs(CachingIndexReader.java:573) org.apache.jackrabbit.core.query.lucene.CachingIndexReader$CacheInitializer.initializeParents(CachingIndexReader.java:471) org.apache.jackrabbit.core.query.lucene.CachingIndexReader$CacheInitializer.run(CachingIndexReader.java:393) org.apache.jackrabbit.core.query.lucene.CachingIndexReader.<init>(CachingIndexReader.java:143) org.apache.jackrabbit.core.query.lucene.AbstractIndex.getReadOnlyIndexReader(AbstractIndex.java:323) - locked org.apache.jackrabbit.core.query.lucene.PersistentIndex@5564c14f org.apache.jackrabbit.core.query.lucene.MultiIndex.getIndexReader(MultiIndex.java:756) - locked java.lang.Object@49cf5555 - locked org.apache.jackrabbit.core.query.lucene.MultiIndex@24480a4f org.apache.jackrabbit.core.query.lucene.MultiIndex.<init>(MultiIndex.java:301) org.apache.jackrabbit.core.query.lucene.SearchIndex.doInit(SearchIndex.java:516) Thanks a lot. ------------------------------------------------------------------------------------ Just some ideas: 1) are you sure you're "gracefully" terminating the app always? For performance Lucene/JCR etc. does a lot of stuff lazily so you want to make sure you don't just kill the process. For example, I *think* i'm doing a proper shutdown in the close() method here: https://github.com/Clay-Ferguson/meta64/blob/master/src/main/java/com/meta64/mobile/repo/OakRepository.java If you don't shutdown in a proper way I think the DB will have to go thru a lot of checking and recovery next time it starts. 2) Go into your logger config and set level to TRACE for maximum logging in jackrabbit packages 3) You could create a copy of the DB to experiment with and start removing indexes one at a time, to see which one has the big impact on startup in case it's related to a specific index. 4) Remember your backing DB (MySQL or Mongo, etc) may also have logging configs of it's own you can turn on to get more details what's happening. Best regards, Clay Ferguson [email protected]
