Hi Tommaso,

Last couple of builds on Apache CI are failing in oak-lucene [1] [2].
Running the system locally reveals that quite a bit of time is being
spent in building up suggestor [3]. QueryJcrTest taking some time and
its the test which probably gets hanged in the CI build

Running org.apache.jackrabbit.oak.jcr.query.QueryJcrTest
Tests run: 218, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 245.208 sec

Further looking at the code [0] it appears that a suggestor directory
would always be created/updated irrespective wether user has enabled
suggestor for that index or not.

I think suggestor should only be built if the index has that feature
enabled? For example for normal lucene-property index building up the
suggestor would not be useful

Chetan Mehrotra
[0] 
https://github.com/apache/jackrabbit-oak/blob/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorContext.java#L167
[1] http://ci.apache.org/builders/oak-trunk/builds/1142/steps/compile/logs/stdio
[2] http://ci.apache.org/builders/oak-trunk/builds/1141/steps/compile/logs/stdio
[3]
"Thread-9" prio=10 tid=0x00007f1790797000 nid=0x6b6f runnable
[0x00007f175ef0b000]
   java.lang.Thread.State: RUNNABLE
at 
org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.<init>(OakDirectory.java:201)
at 
org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.<init>(OakDirectory.java:155)
at 
org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexInput.<init>(OakDirectory.java:340)
at 
org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexInput.clone(OakDirectory.java:345)
at 
org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexInput.clone(OakDirectory.java:329)
at org.apache.lucene.store.Directory$SlicedIndexInput.clone(Directory.java:288)
at org.apache.lucene.store.Directory$SlicedIndexInput.clone(Directory.java:269)
at 
org.apache.lucene.codecs.BlockTreeTermsReader$FieldReader.<init>(BlockTreeTermsReader.java:481)
at 
org.apache.lucene.codecs.BlockTreeTermsReader.<init>(BlockTreeTermsReader.java:176)
at 
org.apache.lucene.codecs.lucene41.Lucene41PostingsFormat.fieldsProducer(Lucene41PostingsFormat.java:437)
at 
org.apache.lucene.index.SegmentCoreReaders.<init>(SegmentCoreReaders.java:116)
at org.apache.lucene.index.SegmentReader.<init>(SegmentReader.java:96)
at 
org.apache.lucene.index.ReadersAndUpdates.getReader(ReadersAndUpdates.java:141)
at 
org.apache.lucene.index.ReadersAndUpdates.getReadOnlyClone(ReadersAndUpdates.java:235)
- locked <0x00000000fc700320> (a org.apache.lucene.index.ReadersAndUpdates)
at 
org.apache.lucene.index.StandardDirectoryReader.open(StandardDirectoryReader.java:100)
at org.apache.lucene.index.IndexWriter.getReader(IndexWriter.java:382)
- locked <0x00000000f19fbee0> (a org.apache.lucene.index.IndexWriter)
- locked <0x00000000f19fc010> (a java.lang.Object)
at org.apache.lucene.index.DirectoryReader.open(DirectoryReader.java:111)
at 
org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditorContext.updateSuggester(LuceneIndexEditorContext.java:185)

Reply via email to