Mailing List Archive

lucene 8.4.1, EOFException: read past EOF: NIOFSIndexInput(path="/luceneindex/_f.nvd") [slice=docs]
Hello,

I am receiving next error

past EOF: pos=35014 vs length=33814: NIOFSIndexInput(path="/lucenedata/_s.nvd") [slice=docs]||java.io.EOFException: read past EOF: pos=35014 vs length=33814: NIOFSIndexInput(path="/lucenedata/DomainIndexes/EFBO_EF/fee_di/_s.nvd") [slice=docs]
at org.apache.lucene.store.NIOFSDirectory$NIOFSIndexInput.seekInternal(NIOFSDirectory.java)
at org.apache.lucene.store.BufferedIndexInput.seek(BufferedIndexInput.java)
at org.apache.lucene.codecs.lucene80.Lucene80NormsProducer$1.readShort(Lucene80NormsProducer.java)
at org.apache.lucene.codecs.lucene80.IndexedDISI.readBlockHeader(IndexedDISI.java)
at org.apache.lucene.codecs.lucene80.IndexedDISI.advanceBlock(IndexedDISI.java)
at org.apache.lucene.codecs.lucene80.IndexedDISI.advanceExact(IndexedDISI.java)
at org.apache.lucene.codecs.lucene80.Lucene80NormsProducer$SparseNormsIterator.advanceExact(Lucene80NormsProducer.java)
at org.apache.lucene.codecs.lucene84.Lucene84PostingsWriter.startDoc(Lucene84PostingsWriter.java)
at org.apache.lucene.codecs.PushPostingsWriterBase.writeTerm(PushPostingsWriterBase.java)
at org.apache.lucene.codecs.blocktree.BlockTreeTermsWriter$TermsWriter.write(BlockTreeTermsWriter.java)
at org.apache.lucene.codecs.blocktree.BlockTreeTermsWriter.write(BlockTreeTermsWriter.java)
at org.apache.lucene.codecs.FieldsConsumer.merge(FieldsConsumer.java)
at org.apache.lucene.codecs.perfield.PerFieldPostingsFormat$FieldsWriter.merge(PerFieldPostingsFormat.java)
at org.apache.lucene.index.SegmentMerger.mergeTerms(SegmentMerger.java:245)
at org.apache.lucene.index.SegmentMerger.merge(SegmentMerger.java:140)
at org.apache.lucene.index.IndexWriter.mergeMiddle(IndexWriter.java:4463)
at org.apache.lucene.index.IndexWriter.merge(IndexWriter.java:4057)
at org.apache.lucene.index.ConcurrentMergeScheduler.doMerge(ConcurrentMergeScheduler.java:625)
at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:662)
And I don?t know what should I check/do next. My source code is:
File subIndexFile = new File(linuxPath + indexName + "/SubIndexes/");
for (String fileName : subIndexFile.list()) {
File subDirectory = new File(subIndexFile.getAbsolutePath() + "/" + fileName);
if (subDirectory.isDirectory()) {
directories.add(FSDirectory.open(subDirectory.toPath()));
}
}

File indexFile = new File(linuxPath + indexName);
Directory indexDir = FSDirectory.open(indexFile.toPath());
Analyzer analyzer = new StandardAnalyzer();
IndexWriterConfig iwc = new IndexWriterConfig(analyzer);
iwc.setOpenMode(IndexWriterConfig.OpenMode.CREATE);
IndexWriter indexWriter = new IndexWriter(indexDir, iwc);
Directory[] directoriesArray = new Directory[directories.size()];
directories.toArray(directoriesArray);
for (Directory dir : directories) {
result[1] = dir.toString();
indexWriter.addIndexes(dir);
if (!indexWriter.isOpen()) {
result[1] += indexWriter.getTragicException().getMessage();

result[1] += "||";
StringWriter sw = new StringWriter();
indexWriter.getTragicException().printStackTrace(new PrintWriter(sw));
result[1] += sw.toString();

break;
}
}
indexWriter.close();
I am merging indexes created by indexWriter.addDocument(doc);.
I am working on oracle linux 5.4.17-2011.3.2.1.el8uek.x86_64 x86_64.
Lucene 8.4.1
JDK 1.8.0_201
Storage is local disk ext4.

Thank you for help.

Kind regards,

Maros Stefaniciak


Sent from Mail<https://go.microsoft.com/fwlink/?LinkId=550986> for Windows 10