不能重新索引太阳黑子SOLR - 错误 - RSolr ::错误:: HTTP - 500内

2019-07-03 18:18发布

每次我尝试使用重新索引...

耙太阳黑子:Solr的:REINDEX

这些错误信息一直显示:

错误 - RSolr ::错误:: HTTP - 500内部服务器错误 - 重试...错误 - RSolr ::错误:: HTTP - 500内部服务器错误 - 忽略...错误 - RSolr ::错误:: HTTP - 500内部服务器错误 - 重试...错误 - RSolr ::错误:: HTTP - 500内部服务器错误 - 忽略...

我试图阻止,然后开始使用...

rake sunspot:solr:stop
rake sunspot:solr:start

但是什么都没有发生。

现在每次我尝试在本地主机上运行我的应用程序...

这是错误:

RSolr::Error::Http - 500 Internal Server Error
Error: Severe errors in solr configuration.

Check your log files for more detailed information on what may be wrong.

If you want solr to continue after configuration errors, change: 

 <abortOnConfigurationError>false</abortOnConfigurationError>

in null

-------------------------------------------------------------

Request Data: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><delete><query>type:Trip</query></delete>"

一个比我在终端更详细的错误消息。

我试过很多解决方案,从净像中止配置设置为false,但什么都没有发生。

错误仍然存​​在。

任何解决办法将不胜感激。

Answer 1:

解决方案:

  1. rake sunspot:solr:stop
  2. rm -rvf solr (删除你的/ Solr的目录)
  3. rake sunspot:solr:start
  4. rake sunspot:solr:reindex

请享用



Answer 2:

基于由@professormeowingtons提供的答案,什么样的生产工作对我来说是这样的:

  1. $ rake sunspot:solr:stop RAILS_ENV=production
  2. $ rm -rvf solr # delete your /solr directory
  3. $ sudo reboot # reboot the machine RAILS_ENV=production
  4. $ rake sunspot:solr:start RAILS_ENV=production
  5. $ rake sunspot:solr:reindex RAILS_ENV=production


Answer 3:

参照@professormeowingtons,您不必删除整个Solr的目录,你可能不希望删除您Solr的配置一样schema.xmlsolrconfig.xml 。 您收到错误可能是由于损坏的索引的原因,你所能做的就是删除“的Solr / env的”,即solr/development或/和solr/data/development ,并重新启动Solr的服务器。

 1. rake sunspot:solr:stop

 2. rm -rf solr/development (Delete your solr/development directory)

 3. rm -rf solr/data/development

 4. rake sunspot:solr:start

 5. rake sunspot:solr:reindex

如果问题仍然存在,回滚最近的更改,因为你可能已经增加了一些配置错误。



Answer 4:

我已经得到了通过重新启动我的电脑这方面的工作。 我想有一个Solr的情况下停止不正确: - ?



Answer 5:

其实质是每一个太阳黑子Solr的一部分,可能会出现问题复位。

删除全部solr目录。 这样就删除了完整的Solr目录肯定的-仔细检查!

rm -rf solr

删除太阳黑子Solr的配置文件config/sunspot.yml

rm config/sunspot.yml

停止太阳黑子Solr的。

bundle exec rake sunspot:solr:stop

检查太阳黑子的Solr不再运行。 如果有solr运行注意到有PID过程

ps aux | grep solr

手动杀由PID Solr的过程。 如果只需要该命令bundle exec rake sunspot:solr:stop并不成功。

kill -9 PID # (fully turns off solr - double check `ps aux|grep solr`)

删除你的数据库, 仔细检查,如果你真的确定! 然后重新创建数据库,并从迁移文件中恢复模式。

bundle exec rake db:drop
bundle exec rake db:create
bundle exec rake db:migrate

创建一个新的黑子配置config/sunspot.yml

rails generate sunspot_rails:install

再现了Solr的目录

bundle exec rake sunspot:solr:start

创建一个新的Solr指数

bundle exec rake sunspot:reindex

最后补充你的种子数据的空数据库。

bundle exec rake db:seed


Answer 6:

这意味着在你的配置文件和Solr问题无法启动。 检查太阳黑子记录。



Answer 7:

通过本地主机检查太阳黑子服务器:8982(depelopment)。 如果你得到像控制台同样的错误。 通过本地主机再试一次:8983(生产)。 我的情况下,端口8983是工作很好,我改变在轨/配置/ sunspot.yml太阳黑子配置端口:8983。 并解决了。



Answer 8:

升级Rsolr宝石最新版本,1.0.10.pre1,为我工作。

现在,我能够重新索引我的模型,一切似乎很好,在生产中是。



Answer 9:

对于那些你在Heroku的生产中使用Websolr并获得重新索引时,这个错误:

请记住,你必须查看您的索引时手动上传您的schema.xml在Websolr管理GUI,“ 高级配置 ”选项卡下。 这里的直接链接: https://websolr.com/slices/<index_uri>/schema

你可以得到<index_uri>运行heroku config ,并从WEBSOLR_URL的最后一部分,看起来像这样得到它: http://index.websolr.com/solr/<index_uri>

我就遇到了这个错误,因为我误认为Websolr将只使用schema.xml ,我致力于Git和与所有其他一起被推到Heroku的<appname>/solr/conf的文件。



文章来源: Can't reindex Sunspot SOLR - Error - RSolr::Error::Http - 500 Internal Server Error