I have a app that seems to be locking on some search calls. I am
including the stacktrace for the blocked and blocker thread. We are
using the following jars lucene-snowball-2.1.0.jar and lucene-2.1.0.jar.
The indexes are located on the local disk. We are running on multiple
JVM's against the store. On a 2 CPU zion quad core box. Any thoughts or
suggestions on how to troubleshoot this locking?
"TP-Processor177" daemon prio=10 tid=0x0000002c8a96c800 nid=0x769d
waiting for monitor entry [0x000000004e60a000..0x000000004e60dcb0]
java.lang.Thread.State: BLOCKED (on object monitor)
at
org.apache.lucene.index.SegmentReader.norms(SegmentReader.java:450)
- locked <0x0000002aa0a4f5a8> (a
org.apache.lucene.index.SegmentReader)
at
org.apache.lucene.search.TermQuery$TermWeight.scorer(TermQuery.java:69)
at
org.apache.lucene.search.BooleanQuery$BooleanWeight2.scorer(BooleanQuery.java:355)
at
org.apache.lucene.search.BooleanQuery$BooleanWeight2.scorer(BooleanQuery.java:355)
at
org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:130)
at
org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:111)
at org.apache.lucene.search.Hits.getMoreDocs(Hits.java:66)
at org.apache.lucene.search.Hits.<init>(Hits.java:53)
at org.apache.lucene.search.Searcher.search(Searcher.java:54)
Here is the executing thread that is doing the blocking
"TP-Processor97" daemon prio=10 tid=0x0000002c8fe35400 nid=0x75ce
runnable [0x00000000497bc000..0x00000000497bfdb0]
java.lang.Thread.State: RUNNABLE
at
org.apache.lucene.index.SegmentReader.isDeleted(SegmentReader.java:346)
- locked <0x0000002aa0a4f5a8> (a
org.apache.lucene.index.SegmentReader)
at
org.apache.lucene.index.SegmentReader.document(SegmentReader.java:339)
- locked <0x0000002aa0a4f5a8> (a
org.apache.lucene.index.SegmentReader)
at
org.apache.lucene.index.IndexReader.document(IndexReader.java:368)
at
org.apache.lucene.search.IndexSearcher.doc(IndexSearcher.java:84)
at org.apache.lucene.search.Hits.doc(Hits.java:104)
|