太阳黑子solr没有JSP连接错误

时间:2014-07-17 22:01:58

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

在我的应用程序中,我有太阳黑子solr并且运行得很好,直到几天前。现在突然间,我甚至无法开发我的solr。每次我运行rake sunspot:solr:run时都会抛出此错误:

:INFO:oejw.StandardDescriptorProcessor:NO JSP Support for /solr, did not find org.apache.jasper.servlet.JspServlet
Null identity service, trying login service: null
Finding identity service: null

我没有对我的设置进行任何更改,我已经尝试了this question的建议,但似乎没有任何效果。有谁知道这个错误意味着什么,我该如何解决?

的Gemfile

gem 'sunspot_solr'
gem 'sunspot_rails', github: 'sunspot/sunspot', branch: 'master'

sunspot.yml

production:
  solr:
    hostname: websolr_url
    port: 8983
    log_level: WARNING
    path: /solr/production
    # read_timeout: 2
    # open_timeout: 0.5

development:
  solr:
    hostname: localhost
    port: 8983
    log_level: INFO
    path: /solr/development

test:
  solr:
    hostname: localhost
    port: 8983
    log_level: WARNING
    path: /solr/test

**** **** EDIT

这是我从/solr管理页面获得的错误。我对solr很新,也不知道如何解决这个问题。

SolrCore Initialization Failures

development: org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: Error opening new searcher

日志

21:17:53 SEVERE CachingDirectoryFactory Timeout waiting for all directory ref counts to be released

21:17:53 SEVERE CoreContainer Unable to create core: development
org.apache.solr.common.SolrException: Error opening new searcher
    at org.apache.solr.core.SolrCore.<init>(SolrCore.java:806)
    at org.apache.solr.core.SolrCore.<init>(SolrCore.java:619)
    at org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:1021)
    at org.apache.solr.core.CoreContainer.create(CoreContainer.java:1051)
    at org.apache.solr.core.CoreContainer$3.call(CoreContainer.java:634)
    at org.apache.solr.core.CoreContainer$3.call(CoreContainer.java:629)
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.solr.common.SolrException: Error opening new searcher
    at org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1415)
    at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1527)
    at org.apache.solr.core.SolrCore.<init>(SolrCore.java:781)
    ... 13 more
Caused by: java.io.FileNotFoundException: C:\Sites\LLF\solr\development\data\index\segments_d3 (The system cannot find the file specified)
    at java.io.RandomAccessFile.open(Native Method)
    at java.io.RandomAccessFile.<init>(Unknown Source)
    at org.apache.lucene.store.FSDirectory$FSIndexInput.<init>(FSDirectory.java:409)
    at org.apache.lucene.store.SimpleFSDirectory$SimpleFSIndexInput.<init>(SimpleFSDirectory.java:98)
    at org.apache.lucene.store.SimpleFSDirectory.openInput(SimpleFSDirectory.java:58)
    at org.apache.lucene.store.NRTCachingDirectory.openInput(NRTCachingDirectory.java:232)
    at org.apache.lucene.index.SegmentInfos.read(SegmentInfos.java:285)
    at org.apache.lucene.index.StandardDirectoryReader$1.doBody(StandardDirectoryReader.java:56)
    at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:783)
    at org.apache.lucene.index.StandardDirectoryReader.open(StandardDirectoryReader.java:52)
    at org.apache.lucene.index.DirectoryReader.open(DirectoryReader.java:87)
    at org.apache.solr.core.StandardIndexReaderFactory.newReader(StandardIndexReaderFactory.java:34)
    at org.apache.solr.search.SolrIndexSearcher.<init>(SolrIndexSearcher.java:124)
    at org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1391)
    ... 15 more

21:17:53 SEVERE CoreContainer null:org.apache.solr.common.SolrException: Unable to create core: development
null:org.apache.solr.common.SolrException: Unable to create core: development

2 个答案:

答案 0 :(得分:5)

这不是由太阳黑子引起的,而是由您的Solr实例的错误配置引起的。 Solr需要JSP支持才能提供其管理页面(哪些库查询以获取有关模式的信息等)。如果管理界面因任何原因而无法使用,这将使图书馆因以上消息而退出。

在调试客户端上的任何内容之前,请确保您可以通过常规浏览器访问/solr(或安装它的位置)。对于你需要转移的捆绑码头important settings in an .ini file。您的应用容器的日志可能会告诉您更多信息(可能您在容器中缺少JSP支持,缺少.jars等)。

答案 1 :(得分:1)

最简洁的方法是从cratch开始:

  • 删除整个/solr目录
  • 重新安装
  • 启动solr服务器以重新创建/solr目录
  • 重新索引
  • 添加回来的任何自定义配置