Search code examples
ruby-on-rails-4rspecsunspot-railssolr5semaphore-ci

RSolr::Error::Http - 500 Internal Server Error


I am upgrading solr 5.3.1, I am getting following error when I run specs on semaphoreci

RSolr::Error::Http: RSolr::Error::Http - 500 Internal Server Error Error: {msg=SolrCore 'default' is not available due to init failure: Error opening new searcher,trace=org.apache.solr.common.SolrException: SolrCore 'default' is not available due to init failure: Error opening new searcher at org.apache.solr.core.CoreContainer.getCore(CoreContainer.java:974) at org.apache.solr.servlet.HttpSolrCall.init(HttpSolrCall.java:250) at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:417) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:214) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:179) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)

   URI: http://localhost:8981/solr/default/update?wt=json
   Request Headers: {"Content-Type"=>"application/json"}
   Request Data: "[{\"id\":\"Contact 1\",\"type\":[\"Contact\",\"ActiveRecord::Base\"],\"class_name\":\"Contact\",\"first_name_text\":\"Danial\",\"last_name_text\":\"Ullrich\"}]"

   Backtrace: /home/runner/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rsolr-2.0.2/lib/rsolr/client.rb:195:in

rescue in execute' /home/runner/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rsolr-2.0.2/lib/rsolr/client.rb:185:in execute' /home/runner/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rsolr-2.0.2/lib/rsolr/client.rb:180:in send_and_receive' /home/runner/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/sunspot_rails-2.2.7/lib/sunspot/rails/solr_instrumentation.rb:16:in block in send_and_receive_with_as_instrumentation' /home/runner/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/notifications.rb:164:in block in instrument' /home/runner/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/notifications/instrumenter.rb:20:in instrument' /home/runner/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/notifications.rb:164:in instrument' /home/runner/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/sunspot_rails-2.2.7/lib/sunspot/rails/solr_instrumentation.rb:15:in send_and_receive_with_as_instrumentation' (eval):2:in post' /home/runner/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rsolr-2.0.2/lib/rsolr/client.rb:83:in update' /home/runner/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rsolr-2.0.2/lib/rsolr/client.rb:102:in add' # (eval):2:inpost' # ./spec/controllers/contacts_controller_spec.rb:319:in block (3 levels) in <top (required)>' # ------------------ # --- Caused by: --- # Faraday::ClientError: # the server responded with status 500 # (eval):2:inpost'

Solr Logs

1152 ERROR (coreLoadExecutor-6-thread-2) [   x:development] o.a.s.c.CoreContainer Error creating core [development]: Index locked for write for core 'development'. Solr now longer supports forceful unlocking via 'unlockOnStartup'. Please verify locks manually!
org.apache.solr.common.SolrException: Index locked for write for core 'development'. Solr now longer supports forceful unlocking via 'unlockOnStartup'. Please verify locks manually!
  at org.apache.solr.core.SolrCore.<init>(SolrCore.java:820)
  at org.apache.solr.core.SolrCore.<init>(SolrCore.java:659)
  at org.apache.solr.core.CoreContainer.create(CoreContainer.java:723)
  at org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:443)
  at org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:434)
  at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  at org.apache.solr.common.util.ExecutorUtil$MDCAwareThreadPoolExecutor$1.run(ExecutorUtil.java:210)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.lucene.store.LockObtainFailedException: Index locked for write for core 'development'. Solr now longer supports forceful unlocking via 'unlockOnStartup'. Please verify locks manually!
  at org.apache.solr.core.SolrCore.initIndex(SolrCore.java:528)
  at org.apache.solr.core.SolrCore.<init>(SolrCore.java:761)

Any help would be much appreciated.


Solution

  • write.lock file might be present under solr/{environment}/data/index directory due to unclean shutdown. Removing write.lock file will fix the issue.