Hi,

I'm looking at some code that uses MemoryIndex (Lucene 3.1) and that's 
exhibiting a strange behaviour - it slows down over time.
The MemoryIndex contains 1 doc, of course, and executes a set of a few thousand 
queries against it.  The set of queries does not change - the same set of 
queries gets executed on all incoming documents.
This code runs very quickly..... in the beginning.   But with time is gets 
slower and slower.... and slower..... and then I get this:

4/28/11 10:32:52 PM (S) SolrException.log : java.lang.StackOverflowError
    at org.apache.lucene.util.SorterTemplate.quickSort(SorterTemplate.java:104)
    at org.apache.lucene.util.SorterTemplate.quickSort(SorterTemplate.java:104)
    at org.apache.lucene.util.SorterTemplate.quickSort(SorterTemplate.java:104)

I haven't profiled this code yet (remote server, firewall in between, can't use 
YourKit...), but does the above look familiar to anyone?
I've looked at the code and obviously there is the recursive call that's 
problematic here - it looks like the recursion just gets deeper and deeper and 
"gets stuck", eventually getting too deep for the JVM's taste.

Thanks,
Otis
----
Sematext :: http://sematext.com/ :: Solr - Lucene - Nutch
Lucene ecosystem search :: http://search-lucene.com/


---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-user-h...@lucene.apache.org

Reply via email to