TheConstructors / QwikStubs

An online ticket selling and purchasing system that is designed to be easy and convenient to use by both sellers and purchasers.
http://qwikstubs.com/
3 stars 0 forks source link

Sunspot Reindex Error #24

Open bmbritt10 opened 11 years ago

bmbritt10 commented 11 years ago

I'm getting the following error when running

bundle exec rake sunspot:reindex

on the current develop branch. I have the Solr server running and haven't added any code. Can anyone point me in the right direction to fix this? Thanks!

Brittanys-MacBook-Pro:qwikstubs brittanyberin$ bundle exec rake sunspot:reindex
rake aborted!
RSolr::Error::InvalidRubyResponse - 200 OK
Error: <result status="1">java.lang.NullPointerException
    at org.apache.solr.handler.XmlUpdateRequestHandler.doLegacyUpdate(XmlUpdateRequestHandler.java:129)
    at org.apache.solr.servlet.SolrUpdateServlet.doPost(SolrUpdateServlet.java:87)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1221)
    at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:297)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
    at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)

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

Backtrace: /opt/local/lib/ruby1.9/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:297:in `rescue in evaluate_ruby_response'
/opt/local/lib/ruby1.9/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:294:in `evaluate_ruby_response'
/opt/local/lib/ruby1.9/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:269:in `adapt_response'
/opt/local/lib/ruby1.9/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:175:in `execute'
/opt/local/lib/ruby1.9/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:161:in `send_and_receive'
(eval):2:in `post'
/opt/local/lib/ruby1.9/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:67:in `update'
/opt/local/lib/ruby1.9/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:131:in `delete_by_query'
/opt/local/lib/ruby1.9/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/indexer.rb:57:in `remove_all'
/opt/local/lib/ruby1.9/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/session.rb:181:in `block in remove_all'
/opt/local/lib/ruby1.9/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/session.rb:181:in `each'
(eval):2:in `post'
/Users/brittanyberin/.bundler/ruby/1.9.1/sunspot_mongo_mapper-b6cf3edca97a/lib/sunspot/mongo_mapper/tasks.rb:21:in `block (3 levels) in <top (required)>'
/Users/brittanyberin/.bundler/ruby/1.9.1/sunspot_mongo_mapper-b6cf3edca97a/lib/sunspot/mongo_mapper/tasks.rb:20:in `each'
/Users/brittanyberin/.bundler/ruby/1.9.1/sunspot_mongo_mapper-b6cf3edca97a/lib/sunspot/mongo_mapper/tasks.rb:20:in `block (2 levels) in <top (required)>'
Tasks: TOP => sunspot:reindex
(See full trace by running task with --trace)
bmbritt10 commented 11 years ago

I fixed this issue by uninstalling and reinstalling all of the project's gems on my computer.

kjorg50 commented 11 years ago

I am getting the same error, when I do rake db:seed on the develop branch

kjorg50 commented 11 years ago

I tried uninstalling and reinstalling all ruby gems on my computer, like what Brittany did, but I still am getting the same problem

jroesch commented 11 years ago

You shouldn't be getting a java.lang.NullPointerException from rake db:seed, db:seed shouldn't have to invoke any Java code at all, are you sure it is exactly the same?

jroesch commented 11 years ago

If you haven't run rake sunspot:solr:start before this it will not work, I just checked.

kjorg50 commented 11 years ago

There is a java exception because Solr runs on java. I can successfully call rake sunspot:solr:start but then rake db:seed afterward causes the following:

rake aborted!
RSolr::Error::InvalidRubyResponse - 200 OK
Error: <result status="1">java.lang.NullPointerException
    at org.apache.solr.handler.XmlUpdateRequestHandler.doLegacyUpdate(XmlUpdateRequestHandler.java:129)
    at org.apache.solr.servlet.SolrUpdateServlet.doPost(SolrUpdateServlet.java:87)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1221)
    at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:297)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
    at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)

Request Data: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><add><doc><field name=\"id\">Event 5197f1471d41c851530005a1</field><field name=\"type\">Event</field><field name=\"class_name\">Event</field><field name=\"name_text\">Young the Giant</field><field name=\"description_text\">Young the Giant, a band based out of Irvine, CA, travels across the seven continents on their first World Tour.</field></doc></add>"

Backtrace: /var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:297:in `rescue in evaluate_ruby_response'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:294:in `evaluate_ruby_response'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:269:in `adapt_response'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:175:in `execute'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:161:in `send_and_receive'
(eval):2:in `post'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:67:in `update'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:87:in `add'
/var/lib/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/indexer.rb:106:in `add_documents'
/var/lib/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/indexer.rb:30:in `add'
/var/lib/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/session.rb:91:in `index'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:297:in `rescue in evaluate_ruby_response'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:294:in `evaluate_ruby_response'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:269:in `adapt_response'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:175:in `execute'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:161:in `send_and_receive'
(eval):2:in `post'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:67:in `update'
/var/lib/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:87:in `add'
/var/lib/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/indexer.rb:106:in `add_documents'
/var/lib/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/indexer.rb:30:in `add'
/var/lib/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/session.rb:91:in `index'
/var/lib/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/session_proxy/abstract_session_proxy.rb:11:in `index'
/var/lib/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot.rb:184:in `index'
/var/lib/gems/1.9.1/gems/sunspot_rails-2.0.0/lib/sunspot/rails/searchable.rb:392:in `solr_index'
/var/lib/gems/1.9.1/gems/sunspot_rails-2.0.0/lib/sunspot/rails/searchable.rb:492:in `perform_index_tasks'
/var/lib/gems/1.9.1/gems/activesupport-3.2.11/lib/active_support/callbacks.rb:431:in `_run__720139389__save__266624643__callbacks'
/var/lib/gems/1.9.1/gems/activesupport-3.2.11/lib/active_support/callbacks.rb:405:in `__run_callback'
/var/lib/gems/1.9.1/gems/activesupport-3.2.11/lib/active_support/callbacks.rb:385:in `_run_save_callbacks'
/var/lib/gems/1.9.1/gems/activesupport-3.2.11/lib/active_support/callbacks.rb:81:in `run_callbacks'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/embedded_callbacks.rb:28:in `run_callbacks'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/callbacks.rb:17:in `create_or_update'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/querying.rb:129:in `save'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/dirty.rb:19:in `block in save'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/dirty.rb:37:in `clear_changes'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/dirty.rb:19:in `save'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/validations.rb:22:in `save'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/identity_map.rb:113:in `save'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/querying.rb:134:in `save!'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/querying.rb:31:in `block in create!'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/querying.rb:100:in `block in initialize_each'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/querying.rb:98:in `each'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/querying.rb:98:in `initialize_each'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/querying.rb:31:in `create!'
/home/kylejorgensen/cs/rails_apps/QwikStubs/db/seed_events.rb:4:in `<top (required)>'
/var/lib/gems/1.9.1/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `require'
/var/lib/gems/1.9.1/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `block in require'
/var/lib/gems/1.9.1/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:236:in `load_dependency'
/var/lib/gems/1.9.1/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `require'
/home/kylejorgensen/cs/rails_apps/QwikStubs/db/seeds.rb:16:in `block in <top (required)>'
/home/kylejorgensen/cs/rails_apps/QwikStubs/db/seeds.rb:16:in `each'
/home/kylejorgensen/cs/rails_apps/QwikStubs/db/seeds.rb:16:in `<top (required)>'
/var/lib/gems/1.9.1/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:245:in `load'
/var/lib/gems/1.9.1/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:245:in `block in load'
/var/lib/gems/1.9.1/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:236:in `load_dependency'
/var/lib/gems/1.9.1/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:245:in `load'
/var/lib/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/railtie/database.rake:14:in `block (2 levels) in <top (required)>'
Tasks: TOP => db:seed
(See full trace by running task with --trace)
kjorg50 commented 11 years ago

I might try and post it to Stack Overflow for some help...

EDIT: Hopefully this gets an answer soon http://stackoverflow.com/questions/16629456/rake-dbseed-error-for-rails-app-using-mongodb-sunspot-solr

kjorg50 commented 11 years ago

@bmbritt10 suggested upgrading my rubygems version to 1.8.25, so I did, but it didn't fix the problem. The difference now is that when I run bundle exec rake db:seed I get a _shorter_ stacktrace than before...

rake aborted!
RSolr::Error::InvalidRubyResponse - 200 OK
Error: <result status="1">java.lang.NullPointerException
    at org.apache.solr.handler.XmlUpdateRequestHandler.doLegacyUpdate(XmlUpdateRequestHandler.java:129)
    at org.apache.solr.servlet.SolrUpdateServlet.doPost(SolrUpdateServlet.java:87)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1221)
    at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:297)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
    at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)

Request Data: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><add><doc><field name=\"id\">Event 5199b3b41d41c82e070005a1</field><field name=\"type\">Event</field><field name=\"class_name\">Event</field><field name=\"name_text\">Young the Giant</field><field name=\"description_text\">Young the Giant, a band based out of Irvine, CA, travels across the seven continents on their first World Tour.</field></doc></add>"

Backtrace: /usr/lib/ruby/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:297:in `rescue in evaluate_ruby_response'
/usr/lib/ruby/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:294:in `evaluate_ruby_response'
/usr/lib/ruby/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:269:in `adapt_response'
/usr/lib/ruby/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:175:in `execute'
/usr/lib/ruby/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:161:in `send_and_receive'
(eval):2:in `post'
/usr/lib/ruby/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:67:in `update'
/usr/lib/ruby/gems/1.9.1/gems/rsolr-1.0.9/lib/rsolr/client.rb:87:in `add'
/usr/lib/ruby/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/indexer.rb:106:in `add_documents'
/usr/lib/ruby/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/indexer.rb:30:in `add'
/usr/lib/ruby/gems/1.9.1/gems/sunspot-2.0.0/lib/sunspot/session.rb:91:in `index'(eval):2:in `post'
/home/kylejorgensen/cs/messing_around/QwikStubs/db/seed_events.rb:4:in `<top (required)>'
/home/kylejorgensen/cs/messing_around/QwikStubs/db/seeds.rb:16:in `block in <top (required)>'
/home/kylejorgensen/cs/messing_around/QwikStubs/db/seeds.rb:16:in `each'
/home/kylejorgensen/cs/messing_around/QwikStubs/db/seeds.rb:16:in `<top (required)>'
Tasks: TOP => db:seed
(See full trace by running task with --trace)
TravisSpangle commented 11 years ago

I was encountering this issue as well.

I installed Solr locally and ignored everything in the solr subdirectories. So the contents of solr/pids where ignored but the file structure of solr/pids remained.

I deployed this to our dev server and encountered the above errors.

The solution turned out to be simple. Remove the solr directory (it has been created in a different environment) and restart sunspot.

rake sunspot:solr:stop Delete your /solr directory. rake sunspot:solr:start rake sunspot:solr:reindex

kjorg50 commented 10 years ago

@TravisSpangle I just tried removing everything in solr/ and its subdirectories, but I now get a different error when I try to reindex:

$ bundle exec rake sunspot:solr:reindex
rake aborted!
undefined method `includes' for Event:Class
/home/my_username/.rvm/gems/ruby-1.9.3-p429/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/dynamic_querying.rb:39:in `method_missing'
/home/my_username/.rvm/gems/ruby-1.9.3-p429/gems/sunspot_rails-2.1.0/lib/sunspot/rails/searchable.rb:254:in `solr_index'
/home/my_username/.rvm/gems/ruby-1.9.3-p429/gems/sunspot_rails-2.1.0/lib/sunspot/rails/searchable.rb:203:in `solr_reindex'
/home/my_username/.rvm/gems/ruby-1.9.3-p429/bundler/gems/sunspot_mongo_mapper-b6cf3edca97a/lib/sunspot/mongo_mapper/tasks.rb:21:in `block (3 levels) in <top (required)>'
/home/my_username/.rvm/gems/ruby-1.9.3-p429/bundler/gems/sunspot_mongo_mapper-b6cf3edca97a/lib/sunspot/mongo_mapper/tasks.rb:20:in `each'
/home/my_username/.rvm/gems/ruby-1.9.3-p429/bundler/gems/sunspot_mongo_mapper-b6cf3edca97a/lib/sunspot/mongo_mapper/tasks.rb:20:in `block (2 levels) in <top (required)>'
/home/my_username/.rvm/gems/ruby-1.9.3-p429/bin/ruby_noexec_wrapper:14:in `eval'
/home/my_username.rvm/gems/ruby-1.9.3-p429/bin/ruby_noexec_wrapper:14:in `<main>'
Tasks: TOP => sunspot:solr:reindex => sunspot:reindex
(See full trace by running task with --trace)

Do you have any suggestions for this situation?