On 3/17/2013 11:51 AM, xavier jmlucjav wrote:
Hi,

I have an index where, if I kill solr via Control-C, it consistently hangs
next time I start it. Admin does not show cores, and searches never return.
If I delete the index contents and I restart again all is ok. I am on
windows 7, jdk1.7 and Solr4.0.
Is this a known issue? I looked in jira but found nothing.

I scanned your thread dump. Nothing jumped out at me, but given my inexperience with such things, I'm not surprised by that.

Have you tried 4.1 or 4.2 yet to see if the problem persists? 4.0 is no longer the new hotness.

Below I will discuss the culprit that springs to mind, though I don't know whether it's what you are actually hitting.

One thing that can make Solr take a really long time to start up is huge transaction logs. Transaction logs must be replayed when Solr starts, and if they are huge, it can take a really long time.

Do you have tlog directories in your cores (in the data dir, next to the index directory), and if you do, how much disk space do they use? The example config in 4.x has updateLog turned on.

There are two common situations that can lead to huge transaction logs. One is exclusively using soft commits when indexing, the other is running a very large import with the dataimport handler and not committing until the very end.

AutoCommit with openSearcher=false is a good solution to both of these situations. As long as you use openSearcher=false, it will not change what documents are visible. AutoCommit does a regular "hard" commit every X new documents or every Y milliseconds. A hard commit flushes index data to disk and starts a new transaction log. Solr will only keep a few transaction logs around, so frequently building new ones keeps their size down. When you restart Solr, you don't need to wait for a long time while it replays them.

Thanks,
Shawn

Reply via email to