Hi

While running a search over several million documents, the Yourkit profiler reports a deadlock on the following method. Any ideas?

search worker <--- Frozen for at least 25m 37 sec
org.apache.lucene.util.PriorityQueue.downHeap()
org.apache.lucene.util.PriorityQueue.updateTop()
org.apache.lucene.search.TopFieldCollector$OneComparatorNonScoringCollector.updateBottom(int)
org.apache.lucene.search.TopFieldCollector$OutOfOrderOneComparatorNonScoringCollector.collect(int)
org.apache.lucene.search.Weight$DefaultBulkScorer.scoreAll(Collector, Scorer)
org.apache.lucene.search.Weight$DefaultBulkScorer.score(Collector, int)
org.apache.lucene.search.BulkScorer.score(Collector)
org.apache.lucene.search.IndexSearcher.search(List, Weight, Collector)
org.apache.lucene.search.IndexSearcher.search(List, Weight, FieldDoc, int, Sort, boolean, boolean, boolean) org.apache.lucene.search.IndexSearcher$SearcherCallableWithSort.call()<2 recursive calls>
java.util.concurrent.FutureTask.run()
java.util.concurrent.Executors$RunnableAdapter.call()
java.util.concurrent.FutureTask.run()
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor$Worker)
java.util.concurrent.ThreadPoolExecutor$Worker.run()
java.lang.Thread.run()



search worker <--- Frozen for at least 25m 38 sec
org.apache.lucene.util.PriorityQueue.downHeap()
org.apache.lucene.util.PriorityQueue.updateTop()
org.apache.lucene.search.TopFieldCollector$OneComparatorNonScoringCollector.updateBottom(int)
org.apache.lucene.search.TopFieldCollector$OutOfOrderOneComparatorNonScoringCollector.collect(int)
org.apache.lucene.search.Weight$DefaultBulkScorer.scoreAll(Collector, Scorer)
org.apache.lucene.search.Weight$DefaultBulkScorer.score(Collector, int)
org.apache.lucene.search.BulkScorer.score(Collector)
org.apache.lucene.search.IndexSearcher.search(List, Weight, Collector)
org.apache.lucene.search.IndexSearcher.search(List, Weight, FieldDoc, int, Sort, boolean, boolean, boolean) org.apache.lucene.search.IndexSearcher$SearcherCallableWithSort.call()<2 recursive calls>
java.util.concurrent.FutureTask.run()
java.util.concurrent.Executors$RunnableAdapter.call()
java.util.concurrent.FutureTask.run()
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor$Worker)
java.util.concurrent.ThreadPoolExecutor$Worker.run()
java.lang.Thread.run()



search worker <--- Frozen for at least 25m 37 sec
org.apache.lucene.util.PriorityQueue.downHeap()
org.apache.lucene.util.PriorityQueue.pop()
org.apache.lucene.search.TopFieldCollector.populateResults(ScoreDoc[], int)
org.apache.lucene.search.TopDocsCollector.topDocs(int, int)
org.apache.lucene.search.TopDocsCollector.topDocs()
org.apache.lucene.search.IndexSearcher.search(List, Weight, FieldDoc, int, Sort, boolean, boolean, boolean) org.apache.lucene.search.IndexSearcher$SearcherCallableWithSort.call()<2 recursive calls>
java.util.concurrent.FutureTask.run()
java.util.concurrent.Executors$RunnableAdapter.call()
java.util.concurrent.FutureTask.run()
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor$Worker)
java.util.concurrent.ThreadPoolExecutor$Worker.run()
java.lang.Thread.run()



search worker <--- Frozen for at least 25m 37 sec
org.apache.lucene.util.PriorityQueue.downHeap()
org.apache.lucene.util.PriorityQueue.updateTop()
org.apache.lucene.search.TopFieldCollector$OneComparatorNonScoringCollector.updateBottom(int)
org.apache.lucene.search.TopFieldCollector$OutOfOrderOneComparatorNonScoringCollector.collect(int)
org.apache.lucene.search.Weight$DefaultBulkScorer.scoreAll(Collector, Scorer)
org.apache.lucene.search.Weight$DefaultBulkScorer.score(Collector, int)
org.apache.lucene.search.BulkScorer.score(Collector)
org.apache.lucene.search.IndexSearcher.search(List, Weight, Collector)
org.apache.lucene.search.IndexSearcher.search(List, Weight, FieldDoc, int, Sort, boolean, boolean, boolean) org.apache.lucene.search.IndexSearcher$SearcherCallableWithSort.call()<2 recursive calls>
java.util.concurrent.FutureTask.run()
java.util.concurrent.Executors$RunnableAdapter.call()
java.util.concurrent.FutureTask.run()
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor$Worker)
java.util.concurrent.ThreadPoolExecutor$Worker.run()
java.lang.Thread.run()

Much appreciate

Jamie





---------------------------------------------------------------------
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