Hi Grant,

My stress test is unable to reproduce this exception, either. I'm adding Wikipedia docs to an index, using a high merge factor, then opening a new writer with low merge factor (5) and calling optimize. This forces concurrent merges to run during the optimize.

One more question: are your docs uniform? Or, for example, do some of them have stored fields while others do not?

Mike

Grant Ingersoll wrote:


On Jun 11, 2008, at 6:00 AM, Michael McCandless wrote:


Grant Ingersoll wrote:

Is more than one thread adding documents to the index?

I don't believe so, but I am trying to reproduce. I've only seen it once, and don't have a lot of details, other than I noticed it was on a specific file (.fdt) and was wondering if that was a factor or not. That is, maybe Paul could reproduce it.

I think your exception differs from Paul's in an important way. Paul's exception means an entire segment (its CFS file) was deleted, which is very easily caused by accidentally allowing 2 writers on the index at once. But in your case, SegmentReader successfully opened the fnm file but then failed on the fdt, so, your segment wasn't deleted (at least not entirely). So I think something different caused your exception.

Any changes to the defaults in IndexWriter?

It's the SolrIndexWriter.

OK.  But what does your solrconfig.xml look like?

It's pretty much the standard indexing setup that's on trunk. Merge Factor 10, Max Buffered Docs 1000





After seeing that exception, does IndexReader.open also hit that exception (ie, is/was the index corrupt)? Or does it only happen with BG merges?

Not sure, unfortunately, I don't have a lot of info yet. The background exception happened during an optimize, if that matters at all

OK. It'd be very useful to know if index was really corrupt (missing that segment) vs BG merge incorrectly, temporarily, thought it was supposed to merge that segment.

Is this a largish index?

couple million relatively small records

Like, would there be so many segments that optimize would be running concurrent merges (> 2*mergeFactor segments)? With ConcurrentMergeScheduler, optimize is now able to run multiple merges concurrently, if the index has enough segments.

I don't know. Like I said, the only reason I posted was b/c I thought it sounded similar to Paul's. I haven't been able to reproduce it yet.



I'll run some stress tests, focusing on concurrency of merges during optimize...

Which OS & JRE are you using?

Linux, Java 1.6.0_05



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



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

Reply via email to