Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to recover from Solr deleted index files?

Tags:

exception

solr

When I delete solr's index files on disk, (found in /solr/data/index and solr/data/spellchecker), solr throws an exception whenever I try to make a request to it:

java.lang.RuntimeException: java.io.FileNotFoundException: no segments* file found in org.apache.lucene.store.NIOFSDirectory@/…/solr/data/index:

The only way I've found to recover from this is to “seed” the data directory with the index files from elsewhere. It doesn't really matter where it seems. Once I do this, I can run a query to reload the schema and regenerate the index. Is this how this is supposed to work? It seems like there should be a way to tell solr to regenerate those files from scratch. Maybe I'm just mistaken in my assumption that these files are not part of the application itself (kind of implied by the name “data”)?

like image 865
davidtbernal Avatar asked Oct 15 '10 00:10

davidtbernal


1 Answers

Solr will throw that exception at startup if the index directory exists but is empty. However if you delete the directory, Solr will create it and the empty segments files at startup.

like image 124
Mauricio Scheffer Avatar answered Sep 25 '22 19:09

Mauricio Scheffer