Not good!
It's almost certainly a bug with Lucene, I think, because Solr is
just a consumer of Lucene's API, which shouldn't ever cause something
like this.
Apparently, while merging stored fields, SegmentMerger tried to read
too far.
Is this easily repeatable?
Mike
Grant Ingersoll wrote:
I am running Lucene trunk with Solr and am getting the exception
below when I call Solr's optimize. I will see if I can isolate it
to a test case, but thought I would throw it out there if anyone
sees anything obvious.
In this case, I am adding documents sequentially and then at the
end call Solr's optimize, which invokes Lucene's optimize. The
problem could be in Solr in that it's notion of commit does not
play nice with Lucene's new merge policy. However, I am posting
here b/c the signs point to an issue in Lucene.
Cheers,
Grant
Exception in thread "Thread-20" org.apache.lucene.index.MergePolicy
$MergeException: java.io.IOException: read past EOF
at org.apache.lucene.index.ConcurrentMergeScheduler
$MergeThread.run(ConcurrentMergeScheduler.java:274)
Caused by: java.io.IOException: read past EOF
at org.apache.lucene.store.BufferedIndexInput.refill
(BufferedIndexInput.java:146)
at org.apache.lucene.store.BufferedIndexInput.readByte
(BufferedIndexInput.java:38)
at org.apache.lucene.store.IndexInput.readVInt
(IndexInput.java:76)
at org.apache.lucene.index.FieldsReader.addFieldForMerge
(FieldsReader.java:280)
at org.apache.lucene.index.FieldsReader.doc
(FieldsReader.java:167)
at org.apache.lucene.index.SegmentReader.document
(SegmentReader.java:659)
at org.apache.lucene.index.SegmentMerger.mergeFields
(SegmentMerger.java:300)
at org.apache.lucene.index.SegmentMerger.merge
(SegmentMerger.java:122)
at org.apache.lucene.index.IndexWriter.mergeMiddle
(IndexWriter.java:3050)
at org.apache.lucene.index.IndexWriter.merge
(IndexWriter.java:2792)
at org.apache.lucene.index.ConcurrentMergeScheduler
$MergeThread.run(ConcurrentMergeScheduler.java:240)
Dec 17, 2007 1:44:26 PM org.apache.solr.common.SolrException log
SEVERE: java.io.IOException: background merge hit exception:
_3:C500 _4:C3 _l:C500 into _m [optimize]
at org.apache.lucene.index.IndexWriter.optimize
(IndexWriter.java:1744)
at org.apache.lucene.index.IndexWriter.optimize
(IndexWriter.java:1684)
at org.apache.lucene.index.IndexWriter.optimize
(IndexWriter.java:1664)
at org.apache.solr.update.DirectUpdateHandler2.commit
(DirectUpdateHandler2.java:544)
at
org.apache.solr.update.processor.RunUpdateProcessor.processCommit
(RunUpdateProcessorFactory.java:85)
at org.apache.solr.handler.RequestHandlerUtils.handleCommit
(RequestHandlerUtils.java:102)
at
org.apache.solr.handler.XmlUpdateRequestHandler.handleRequestBody
(XmlUpdateRequestHandler.java:113)
at org.apache.solr.handler.RequestHandlerBase.handleRequest
(RequestHandlerBase.java:121)
at org.apache.solr.core.SolrCore.execute(SolrCore.java:875)
at org.apache.solr.servlet.SolrDispatchFilter.execute
(SolrDispatchFilter.java:283)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter
(SolrDispatchFilter.java:234)
at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1089)
...
Caused by: java.io.IOException: read past EOF
at org.apache.lucene.store.BufferedIndexInput.refill
(BufferedIndexInput.java:146)
at org.apache.lucene.store.BufferedIndexInput.readByte
(BufferedIndexInput.java:38)
at org.apache.lucene.store.IndexInput.readVInt
(IndexInput.java:76)
at org.apache.lucene.index.FieldsReader.addFieldForMerge
(FieldsReader.java:280)
at org.apache.lucene.index.FieldsReader.doc
(FieldsReader.java:167)
at org.apache.lucene.index.SegmentReader.document
(SegmentReader.java:659)
at org.apache.lucene.index.SegmentMerger.mergeFields
(SegmentMerger.java:300)
at org.apache.lucene.index.SegmentMerger.merge
(SegmentMerger.java:122)
at org.apache.lucene.index.IndexWriter.mergeMiddle
(IndexWriter.java:3050)
at org.apache.lucene.index.IndexWriter.merge
(IndexWriter.java:2792)
at org.apache.lucene.index.ConcurrentMergeScheduler
$MergeThread.run(ConcurrentMergeScheduler.java:240)
Dec 17, 2007 1:44:26 PM org.apache.solr.core.SolrCore execute
INFO: [null] /update
optimize=true&wt=xml&waitFlush=true&waitSearcher=true&version=2.2 0
1626
Dec 17, 2007 1:44:26 PM org.apache.solr.common.SolrException log
SEVERE: java.io.IOException: background merge hit exception:
_3:C500 _4:C3 _l:C500 into _m [optimize]
at org.apache.lucene.index.IndexWriter.optimize
(IndexWriter.java:1744)
at org.apache.lucene.index.IndexWriter.optimize
(IndexWriter.java:1684)
at org.apache.lucene.index.IndexWriter.optimize
(IndexWriter.java:1664)
at org.apache.solr.update.DirectUpdateHandler2.commit
(DirectUpdateHandler2.java:544)
at
org.apache.solr.update.processor.RunUpdateProcessor.processCommit
(RunUpdateProcessorFactory.java:85)
at org.apache.solr.handler.RequestHandlerUtils.handleCommit
(RequestHandlerUtils.java:102)
at
org.apache.solr.handler.XmlUpdateRequestHandler.handleRequestBody
(XmlUpdateRequestHandler.java:113)
at org.apache.solr.handler.RequestHandlerBase.handleRequest
(RequestHandlerBase.java:121)
at org.apache.solr.core.SolrCore.execute(SolrCore.java:875)
at org.apache.solr.servlet.SolrDispatchFilter.execute
(SolrDispatchFilter.java:283)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter
(SolrDispatchFilter.java:234)
at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1089)
...
Caused by: java.io.IOException: read past EOF
at org.apache.lucene.store.BufferedIndexInput.refill
(BufferedIndexInput.java:146)
at org.apache.lucene.store.BufferedIndexInput.readByte
(BufferedIndexInput.java:38)
at org.apache.lucene.store.IndexInput.readVInt
(IndexInput.java:76)
at org.apache.lucene.index.FieldsReader.addFieldForMerge
(FieldsReader.java:280)
at org.apache.lucene.index.FieldsReader.doc
(FieldsReader.java:167)
at org.apache.lucene.index.SegmentReader.document
(SegmentReader.java:659)
at org.apache.lucene.index.SegmentMerger.mergeFields
(SegmentMerger.java:300)
at org.apache.lucene.index.SegmentMerger.merge
(SegmentMerger.java:122)
at org.apache.lucene.index.IndexWriter.mergeMiddle
(IndexWriter.java:3050)
at org.apache.lucene.index.IndexWriter.merge
(IndexWriter.java:2792)
at org.apache.lucene.index.ConcurrentMergeScheduler
$MergeThread.run(ConcurrentMergeScheduler.java:240)
---------------------------------------------------------------------
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]