with the test configuration changed (as per r1666100) I could see the suggester being updated continuously only within SuggestTest, while for e.g. QueryJcrTest it did the update only once upon the first commit.
Regards, Tommaso 2015-03-12 10:18 GMT+01:00 Chetan Mehrotra <[email protected]>: > Thanks Tommaso!. Let see how the next build runs > http://ci.apache.org/builders/oak-trunk/builds/1144 > Chetan Mehrotra > > > On Thu, Mar 12, 2015 at 2:36 PM, Tommaso Teofili > <[email protected]> wrote: > > I've created https://issues.apache.org/jira/browse/OAK-2611 to track the > > mentioned issue. > > > > Regards, > > Tommaso > > > > 2015-03-12 9:36 GMT+01:00 Tommaso Teofili <[email protected]>: > > > >> Hi Chetan, > >> > >> there are 2 things at play there I think. > >> First thing is that for testing purposes the suggester was configured to > >> be updated upon each commit [1], the other thing, which is a bug, is > that > >> the code you mentioned [2] should actually check if the the > "useInSuggest" > >> property is set before eventually update the suggester, so at least this > >> check needs to be introduced. For the testing configuration we should > >> probably look for a less intrusive setting. > >> > >> Regards, > >> Tommaso > >> > >> > >> [1] : > >> > https://github.com/apache/jackrabbit-oak/blob/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/LuceneOakRepositoryStub.java#L88 > >> [2] > >> > https://github.com/apache/jackrabbit-oak/blob/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorContext.java#L167 > >> > >> 2015-03-12 8:00 GMT+01:00 Chetan Mehrotra <[email protected]>: > >> > >>> 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) > >>> > >> > >> >
