Matt, On Thursday 05 May 2005 21:26, Matt Magoffin wrote: > Hello, I'm having a tough time trying to get to the root of an exception I > see sometimes on my Lucene 1.4.3 index. The exception is: > > java.lang.ArrayIndexOutOfBoundsException: 4 > at org.apache.lucene.search.BooleanScorer.score(BooleanScorer.java:126) > at org.apache.lucene.search.Scorer.score(Scorer.java:38) > at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:92) > at org.apache.lucene.search.Hits.getMoreDocs(Hits.java:64) > at org.apache.lucene.search.Hits.<init>(Hits.java:43) > at org.apache.lucene.search.Searcher.search(Searcher.java:33) > at org.apache.lucene.search.Searcher.search(Searcher.java:27) > ... > > and occurs when current.coord is set to 4 but coordFactors is of length 4. > The maxCoord is value is 4 at this time, too. I can't get this to happen > every time I run the unit test that this error occurs in... which is very > frustrating, sorry. > > I was wondering if anyone had an idea of what might cause this exception > (I'm assuming something is wrong on my use of Lucene, but I can't find > what).
It took some sleep to realize this: This exception can happen when a scorer is add()'ed to the BooleanScorer after the query search has begun. Given that it is difficult to reproduce, the odds are that there two threads not properly synchronized: one add()ing to the BooleanScorer and one searching the query too soon and producing the above exception. Regards, Paul Elschot. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]