On Jan 24, 2006, at 8:52 AM, Daniel Pfeifer wrote:
Today I've been alerted by one of my collegues that our Lucene-based
indexing solution no longer refreshes the searchers and thus we never
get any new indexed documents.

Since I didn't find anything in the log from log4j I did a "kill -3" on
the process and found two very interesting things:

Almost all multisearcher threads were in this state:

"MultiSearcher thread #1" daemon prio=10 tid=0x0000000001900960
nid=0x81442c waiting for monitor entry
[0xfffffd7d269ff000..0xfffffd7d269ffb50]
        at java.util.Vector.size(Vector.java:270)
        - waiting to lock <0xfffffd7f0114ea28> (a java.util.Vector)
        at
org.apache.lucene.search.BooleanQuery$BooleanWeight.<init> (BooleanQuery.
java:95)

I don't know about this one, but guessing that it just happens to be a normal state of the system when you killed the process. *shrugs*


And, additionally I found another stacktrace in the stdout-log which I
find interesting:

Exception in thread "MultiSearcher thread #1"
org.apache.lucene.search.BooleanQuery$TooManyClauses


This is a typical occurrence when using Query's that expand such as WildcardQuery, RangeQuery, FuzzyQuery, etc. If users are doing queries like a* and there are over 1024 terms that start with "a" then you will, by default, blow up WildcardQuery's expansion into a BooleanQuery. You can up that limit on BooleanQuery, or disallow those types of queries perhaps.

        Erik


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to