【发布时间】:2011-07-05 17:46:55
【问题描述】:
我对 Solr 有一个奇怪的问题。我正在使用带有 Sunspot gem 的 Rails 3,当我运行本地的 Solr 实例时一切都很好。但是,一旦我尝试在具有更多数据(10M 左右的记录,而不是本地环境中的 20K 记录)和远程 Solr 实例的不同环境中运行相同的代码,当我运行 rake sunspor:reindex 时,Solr 开始抛出这样的错误:
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 索引文件夹并从头开始重建索引。除了 Solr 开始抱怨不同的 .fnm 文件之外,这没有任何影响。
如果我在 Rails 中构建模型,也会发生同样的错误。我正在从 .csv 文件中填充数据库,而 Sunspot 会因随机记录而窒息
Solr Response: Internal Server Error
在 Solr 服务器上出现相同的 .fnm 文件缺失错误。
有没有人经历过这样的事情?欢迎任何想法!
【问题讨论】:
-
我想我已经自己解决了。问题是由不正确的 Solr 配置引起的。有两个 Solr 实例指向同一个索引目录。
标签: ruby-on-rails-3 solr sunspot