问题
I can no longer reindex and cannot resolve this issue. Spend several hours digging the web for this issue. ** *regarding production environment * development goes ok. :( How would one fix this?
rake sunspot:reindex
rake aborted!
RSolr::Error::Http - 404 Not Found
Error: Not Found
Request Data: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><delete><query>type:Match</query></delete>"
Backtrace:
/srv/books/shared/bundle/ruby/2.0.0/gems/rsolr-1.0.9/lib/rsolr/client.rb:268:in `adapt_response'
/srv/books/shared/bundle/ruby/2.0.0/gems/rsolr-1.0.9/lib/rsolr/client.rb:175:in `execute'
/srv/books/shared/bundle/ruby/2.0.0/gems/rsolr-1.0.9/lib/rsolr/client.rb:161:in `send_and_receive'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot_rails/lib/sunspot/rails/solr_instrumentation.rb:16:in `block in send_and_receive_with_as_instrumentation'
/srv/books/shared/bundle/ruby/2.0.0/gems/activesupport-4.0.0/lib/active_support/notifications.rb:159:in `block in instrument'
/srv/books/shared/bundle/ruby/2.0.0/gems/activesupport-4.0.0/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
/srv/books/shared/bundle/ruby/2.0.0/gems/activesupport-4.0.0/lib/active_support/notifications.rb:159:in `instrument'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot_rails/lib/sunspot/rails/solr_instrumentation.rb:15:in `send_and_receive_with_as_instrumentation'
(eval):2:in `post'
/srv/books/shared/bundle/ruby/2.0.0/gems/rsolr-1.0.9/lib/rsolr/client.rb:67:in `update'
/srv/books/shared/bundle/ruby/2.0.0/gems/rsolr-1.0.9/lib/rsolr/client.rb:131:in `delete_by_query'/srv/books/shared/bundle/ruby/2.0.0/gems/rsolr-1.0.9/lib/rsolr/client.rb:268:in `adapt_response'
/srv/books/shared/bundle/ruby/2.0.0/gems/rsolr-1.0.9/lib/rsolr/client.rb:175:in `execute'
/srv/books/shared/bundle/ruby/2.0.0/gems/rsolr-1.0.9/lib/rsolr/client.rb:161:in `send_and_receive'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot_rails/lib/sunspot/rails/solr_instrumentation.rb:16:in `block in send_and_receive_with_as_instrumentation'
/srv/books/shared/bundle/ruby/2.0.0/gems/activesupport-4.0.0/lib/active_support/notifications.rb:159:in `block in instrument'
/srv/books/shared/bundle/ruby/2.0.0/gems/activesupport-4.0.0/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
/srv/books/shared/bundle/ruby/2.0.0/gems/activesupport-4.0.0/lib/active_support/notifications.rb:159:in `instrument'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot_rails/lib/sunspot/rails/solr_instrumentation.rb:15:in `send_and_receive_with_as_instrumentation'
(eval):2:in `post'
/srv/books/shared/bundle/ruby/2.0.0/gems/rsolr-1.0.9/lib/rsolr/client.rb:67:in `update'
/srv/books/shared/bundle/ruby/2.0.0/gems/rsolr-1.0.9/lib/rsolr/client.rb:131:in `delete_by_query'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot/lib/sunspot/indexer.rb:57:in `remove_all'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot/lib/sunspot/session.rb:181:in `block in remove_all'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot/lib/sunspot/session.rb:181:in `each'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot/lib/sunspot/session.rb:181:in `remove_all'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot/lib/sunspot/session_proxy/abstract_session_proxy.rb:11:in `remove_all'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot/lib/sunspot/session_proxy/retry_5xx_session_proxy.rb:17:in `method_missing'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot/lib/sunspot/session_proxy/abstract_session_proxy.rb:11:in `remove_all'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot/lib/sunspot.rb:464:in `remove_all'
/srv/books/shared/bundle/ruby/2.0.0/gems/newrelic_rpm-3.6.8.168/lib/new_relic/agent/method_tracer.rb:508:in `block in remove_all_with_trace_SolrClient_Sunspot_delete'
/srv/books/shared/bundle/ruby/2.0.0/gems/newrelic_rpm-3.6.8.168/lib/new_relic/agent/method_tracer.rb:259:in `trace_execution_scoped'
/srv/books/shared/bundle/ruby/2.0.0/gems/newrelic_rpm-3.6.8.168/lib/new_relic/agent/method_tracer.rb:503:in `remove_all_with_trace_SolrClient_Sunspot_delete'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot_rails/lib/sunspot/rails/searchable.rb:183:in `solr_remove_all_from_index'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot_rails/lib/sunspot/rails/searchable.rb:202:in `solr_reindex'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot_rails/lib/sunspot/rails/tasks.rb:57:in `block (4 levels) in <top (required)>'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot/lib/sunspot/class_set.rb:16:in `each'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot/lib/sunspot/class_set.rb:16:in `each'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot_rails/lib/sunspot/rails/tasks.rb:56:in `block (3 levels) in <top (required)>'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot_rails/lib/sunspot/rails/tasks.rb:68:in `with_session'
/srv/books/shared/bundle/ruby/2.0.0/bundler/gems/sunspot-4e6c7870e3aa/sunspot_rails/lib/sunspot/rails/tasks.rb:19:in `block (2 levels) in <top (required)>'
/usr/local/rvm/gems/ruby-2.0.0-p247@books/bin/ruby_executable_hooks:15:in `eval'
/usr/local/rvm/gems/ruby-2.0.0-p247@books/bin/ruby_executable_hooks:15:in `<main>'
Tasks: TOP => sunspot:reindex
(See full trace by running task with --trace)
回答1:
These are the terminal commands you should follow to solve your problems:
ps aux | grep solr
to get solr process IDsudo kill <ID>
,<ID>
is the ID you found from 1rm -r <path/to/solr>
, remove the solr directory inside your project to remove all of previous indexesRAILS_ENV=production bundle exec rake sunspot:solr:start
- Change the path to
/solr/default
insideconfig/sunspot.yml
RAILS_ENV=production bundle exec rake sunspot:solr:reindex
Bam! Problems solved! I hope.
回答2:
upgrading to tomcat6 fixed the issue after i Set sunspot.yml path to /solr/collection1 and copying the scheme.xml from sunspot to the /opt/solr/collection1/conf/scheme.xml
来源:https://stackoverflow.com/questions/19657351/rake-sunspotreindex-rake-aborted-rsolrerrorhttp-404-not-found