I am new to debugging Java services, so I'm wondering what the best
practices are for debugging solr on tomcat.  I'm running into a few
issues while building up my index, using the ExtractingRequestHandler
to format the data from my sources.  I can read through the catalina
log, but this seems to just log requests; not much info is given about
errors or when the service hangs.  Here are some examples:

Some zip or Office formats uploaded to the extract requestHandler
simply hang with the jsvc process spinning at 100% CPU.  I'm unclear
where in the process the request is hanging.  Did it make it through
Tika?  Is it attempting to index?  The problem is often not
reproducible after restarting tomcat and starting with the last failed
document.

Although I am keeping document size under 5MB, I regularly see
"SEVERE: java.lang.OutOfMemoryError: Java heap space" errors.  How can
I find what component had this problem?

After the above error, I often see this followup error on the next
document: "SEVERE: org.apache.lucene.store.LockObtainFailedException:
Lock obtain timed out: NativeFSLock@/var/lib/solr/data/
index/lucene-d6f7b3bf6fe64f362b4d45bfd4924f54-write.lock" .  This has
a backtrace, so I could dive directly into the code.  Is this the best
way to track down the problem, or are there debugging settings that
could help show why the lock is being held elsewhere?

I attempted to turn on indexing logging with the line

<infoStream file="INFOSTREAM.txt">true</infoStream>

but I can't seem to find this file in either the tomacat or the index directory.

I am using solr 3.1 with the patch to work with Tika 0.7.  Thanks for any tips,

Jim

Reply via email to