no segments* file found

Viewed 30355

I need to access a lucene index ( created by crawling several webpages using Nutch) but it is giving the error shown above :

java.io.FileNotFoundException: no segments* file found in org.apache.lucene.store.FSDirectory@/home/<path>: files:
    at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:516)
    at org.apache.lucene.index.IndexReader.open(IndexReader.java:185)
    at org.apache.lucene.index.IndexReader.open(IndexReader.java:148)
    at DictionaryGenerator.generateDict(DictionaryGenerator.java:24)
    at DictionaryGenerator.main(DictionaryGenerator.java:56)

I googled but the reasons given were not matching the requirements. The fact that files are being shown ( the path) probably means that the directory is not empty.
Thanks

3 Answers

Stumbled upon this issue in 2020:

I had opened the IndexReader using the

org.apache.lucene.index.DirectoryReader#open(org.apache.lucene.store.Directory)

method instead of

org.apache.lucene.index.DirectoryReader#open(org.apache.lucene.index.IndexWriter)

The first one resulted in the error described above, while the latter one worked fine on an empty directory - and seems the way to go here.

Related