1

Macを突然シャットダウンしたときにモデルのインデックスを再作成していましたが、スクリプト/コンソールで(Model_name).reindexを使用して再度インデックスを再作成しようとすると、これまでに発生したことのないエラーが発生しました。

RSolr::RequestError: Solr Response: 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____abortOnConfigurationErrorfalseabortOnConfigurationError__in_null___javalangRuntimeException_javaioIOException_read_past_EOF__at_orgapachesolrcoreSolrCoregetSearcherSolrCorejava1068__at_orgapachesolrcoreSolrCoreinitSolrCorejava579__at_orgapachesolrcoreCoreContainer$InitializerinitializeCoreContainerjava137__at_orgapachesolrservletSolrDispatchFilterinitSolrDispatchFilterjava83__at_orgmortbayjettyservletFilterHolderdoStartFilterHolderjava99__at_orgmortbaycomponentAbstractLifeCyclestartAbstractLifeCyclejava40__at_orgmortbayjettyservletServletHandlerinitializeServletHandlerjava594__at_orgmortbayjettyservletContextstartContextContextjava139__at_orgmortbayjettywebappWebAppContextstartContextWebAppContextjava1218__at_orgmortbayjettyhandlerContextHandlerdoStartContextHandlerjava500__at_orgmortbayjettywebappWebAppContextdoStartWebAppContextjava448__at_orgmortbaycomponentAbstractLifeCyclestartAbstractLifeCyclejava40__at_orgmortbayjettyhandlerHandlerCollectiondoStartHandlerCollectionjava147__at_orgmortbayjettyhandlerContextHandlerCollectiondoStartContextHandlerCollectionjava161__at_orgmortbaycomponentAbstractLifeCyclestartAbstractLifeCyclejava40__at_orgmortbayjettyhandlerHandlerCollectiondoStartHandlerCollectionjava147__at_orgmortbaycomponentAbstractLifeCyclestartAbstractLifeCyclejava40__at_orgmortbayjettyhandlerHandlerWrapperdoStartHandlerWrapperjava117__at_orgmortbayjettyServerdoStartServerjava210__at_orgmortbaycomponentAbstractLifeCyclestartAbstractLifeCyclejava40__at_orgmortbayxmlXmlConfigurationmainXmlConfigurationjava929__at_sunreflectNativeMethodAccessorImplinvoke0Native_Method__at_sun
        from /usr/local/lib/ruby/gems/1.8/gems/rsolr-0.12.1/lib/rsolr/connection/requestable.rb:39:in `request'
        from /usr/local/lib/ruby/gems/1.8/gems/rsolr-0.12.1/lib/rsolr/client.rb:34:in `request'
        from /usr/local/lib/ruby/gems/1.8/gems/rsolr-0.12.1/lib/rsolr/client.rb:22:in `update'
        from /usr/local/lib/ruby/gems/1.8/gems/rsolr-0.12.1/lib/rsolr/client.rb:76:in `delete_by_query'
        from /usr/local/lib/ruby/gems/1.8/gems/sunspot-1.1.0/lib/sunspot/indexer.rb:55:in `remove_all'
        from /usr/local/lib/ruby/gems/1.8/gems/sunspot-1.1.0/lib/sunspot/session.rb:173:in `remove_all'
        from /usr/local/lib/ruby/gems/1.8/gems/sunspot-1.1.0/lib/sunspot/session.rb:173:in `each'
        from /usr/local/lib/ruby/gems/1.8/gems/sunspot-1.1.0/lib/sunspot/session.rb:173:in `remove_all'
        from /usr/local/lib/ruby/gems/1.8/gems/sunspot-1.1.0/lib/sunspot/session_proxy/abstract_session_proxy.rb:11:in `remove_all'
        from /usr/local/lib/ruby/gems/1.8/gems/sunspot-1.1.0/lib/sunspot.rb:414:in `remove_all'
        from /Users/cecilleann/Projects/dhire2/vendor/plugins/sunspot_rails-1.1.0/lib/sunspot/rails/searchable.rb:164:in `solr_remove_all_from_index'
        from /Users/cecilleann/Projects/dhire2/vendor/plugins/sunspot_rails-1.1.0/lib/sunspot/rails/searchable.rb:183:in `reindex'
        from (irb):6

今、私はエラーを修正することができませんでした。私を助けてください。動かせません。よろしくお願いします

4

2 に答える 2

5

おそらく、インデックス・フォルダーが破損し、solrが「デッドロック」状態に陥った可能性があります。solrの構成に問題はありません。これが私がしたことです:

  • solrインデックスフォルダーを消去しました。
  • solrconfig.xmlの次の属性をfalseに変更しました。

      <abortOnConfigurationError>false</abortOnConfigurationError>
    
  • 実行中の場合はsolrを再起動します
  • 再インデックスされたsolr;
  • abortOnConfigurationError属性を元の値に設定します。
  • abortOnConfigurationError=false誤ったインデックスを取得しないようにするために、再度インデックスを再作成しました。
于 2011-08-16T23:34:38.583 に答える
5

実行中のプロセスをチェックして、tmpファイルが指している場所を検証し、sunspot-solrプロセスを停止して、最後にそのtmpファイルを削除します。

例えば:

ps -ef | grep sunspot
ps -ef | grep solr
501 53845     1   0   0:00.42 ??         0:02.99 /usr/bin/java 
-Dsolr.data.dir=/var/folders/QJ/QJJ4EWSXEpOEtXE8SN7iS++++TI/-Tmp- 
-Dsolr.solr.home=/Users/aldonievas/.rvm/gems/ruby-1.9.2-p0/gems/sunspot-1.1.0/solr/solr 
-jar start.jar

だからあなたはファイルを削除する必要があります/var/folders/QJ/QJJ4EWSXEpOEtXE8SN7iS++++TI/-Tmp-

その後、プロセスを再開します。動作するはずです。

于 2010-11-20T01:46:40.357 に答える