在远程Solr实例上使用Sunspot重新编制索引时,缺少.fnm文件错误

时间:2011-07-05 17:46:55

标签: ruby-on-rails-3 solr sunspot

我和Solr有一个奇怪的问题。我正在使用带有Sunspot gem的Rails 3,当我运行Solr的本地实例时,一切都很好。但是,一旦我尝试在不同的环境中运行相同的代码,其中包含更多数据(10M记录,而不是本地环境中的20K)和远程Solr实例,当我运行rake sunspor时,Solr开始抛出这样的错误:reindex:

Solr Response: Internal Server Error

tomcat6日志会包含如下错误:

Jul 5, 2011 10:14:29 AM org.apache.solr.core.SolrCore execute
INFO: [] webapp=/solr4 path=/update params={wt=ruby} status=0 QTime=6
Jul 5, 2011 10:14:30 AM org.apache.solr.update.processor.LogUpdateProcessor finish
INFO: {add=[Project 395767, Project 396057, Project 396078, Project 396139, Project 396368, Project 396409, Project 396421, Project 396442, ... (8 added)]} 0 73
Jul 5, 2011 10:14:30 AM org.apache.solr.common.SolrException log
SEVERE: java.io.FileNotFoundException: /opt/solr/solr4/data/index/_0.fnm (No such file or directory)

似乎在随机时间发生(不是同一个项目导致它)。

我尝试删除Solr索引文件夹并从头开始重建索引。除了索尔开始抱怨不同的.fnm文件之外,这没有任何影响。

如果我在Rails中构建模型,则会发生同样的错误。我从.csv文件填充数据库,Sunspot会随机记录

Solr Response: Internal Server Error

在Solr服务器上同样缺少.fnm文件错误。

有没有人经历过这样的事情?任何想法都会受到欢迎!

1 个答案:

答案 0 :(得分:1)

我想我已经把它弄清楚了。问题是由不正确的Solr配置引起的。有两个Solr实例指向同一个索引目录。