Подтвердить что ты не робот

Не удается переиндексировать SunSpot SOLR - Ошибка - RSolr:: Ошибка:: Http-500 Внутренняя ошибка сервера

Каждый раз, когда я пытаюсь переиндексировать, используя...

rake sunspot: solr: reindex

Эти сообщения об ошибках всегда показывают:

Ошибка - RSolr:: Ошибка:: Http - 500 Внутренняя ошибка сервера - повторная попытка... Ошибка - RSolr:: Ошибка:: Http - 500 Внутренняя ошибка сервера - игнорирование... Ошибка - RSolr:: Ошибка:: Http - 500 Внутренняя ошибка сервера - повторная попытка... Ошибка - RSolr:: Ошибка:: Http - 500 Внутренняя ошибка сервера - игнорирование...

Я попытался остановиться, а затем начал использовать...

rake sunspot:solr:stop
rake sunspot:solr:start

Но ничего не произошло.

И теперь каждый раз я пытаюсь запустить приложение в локальном хосте...

Это ошибка:

RSolr::Error::Http - 500 Internal Server Error
Error: 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: 

 <abortOnConfigurationError>false</abortOnConfigurationError>

in null

-------------------------------------------------------------

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

Более подробное сообщение об ошибке, чем тот, который у меня был в терминале.

Я попробовал множество решений из сети, например, установить Abort Configuration в false, но ничего не произошло.

Ошибка по-прежнему сохраняется.

Любая работа вокруг будет оценена.

4b9b3361

Ответ 1

Решение:

  • rake sunspot:solr:stop
  • rm -rvf solr (Удалить каталог /solr )
  • rake sunspot:solr:start
  • rake sunspot:solr:reindex

Enjoy

Ответ 2

Основываясь на ответе, предоставленном @professormeowingtons, то, что работало для меня в процессе производства, следующее:

  • $ rake sunspot:solr:stop RAILS_ENV=production
  • $ rm -rvf solr # delete your /solr directory
  • $ sudo reboot # reboot the machine RAILS_ENV=production
  • $ rake sunspot:solr:start RAILS_ENV=production
  • $ rake sunspot:solr:reindex RAILS_ENV=production

Ответ 3

Что касается @professormeowingtons, вам не нужно удалять всю директорию solr, поскольку вы можете не захотеть удалить ваши конфигурации solr, такие как schema.xml и solrconfig.xml. Причина, по которой вы получаете ошибку, может быть из-за поврежденных индексов, что вы можете сделать, это удалить "solr/env" i.e. solr/development или/и solr/data/development и перезапустить сервер solr.

 1. rake sunspot:solr:stop

 2. rm -rf solr/development (Delete your solr/development directory)

 3. rm -rf solr/data/development

 4. rake sunspot:solr:start

 5. rake sunspot:solr:reindex

Если проблема по-прежнему сохраняется, отмените последние изменения, так как вы могли добавить некоторые неправильные конфигурации.

Ответ 4

У меня это работает, перезагрузив мой компьютер. Я предполагаю, что некорректно остановлен экземпляр solr: -?

Ответ 5

Суть в том, чтобы сбросить каждую часть солнечного пятна, в которой могут возникнуть проблемы.

Удалить полный каталог solr. Это удаляет полный каталог Solr наверняка - двойная проверка!

rm -rf solr

Удалите файл config/sunspot.yml.

rm config/sunspot.yml

Стоп солнечное пятно

bundle exec rake sunspot:solr:stop

Проверьте, больше ли запущено солнечное пятно. Если есть solr процессы, обратите внимание, что PID

ps aux | grep solr

Вручную убить процессы Solr с помощью PID. Эта команда необходима только в том случае, если bundle exec rake sunspot:solr:stop не был успешным.

kill -9 PID # (fully turns off solr - double check 'ps aux|grep solr')

Удалите базу данных, дважды проверьте, действительно ли вы уверены! Затем заново создайте базу данных и восстановите схему из файлов миграции.

bundle exec rake db:drop
bundle exec rake db:create
bundle exec rake db:migrate

создает новую конфигурацию солнечного пятна config/sunspot.yml.

rails generate sunspot_rails:install

воссоздает каталог Solr

bundle exec rake sunspot:solr:start

создать новый индекс Solr

bundle exec rake sunspot:reindex

Наконец, заполните пустую базу данных вашими начальными данными.

bundle exec rake db:seed

Ответ 6

Это означает, что в вашем файле конфигурации есть проблема, и solr не может запускаться. Проверьте журналы солнечных пятен.

Ответ 7

Проверьте ваш сервер солнечных пятен на localhost: 8982 (depelopment). если вы получите ту же ошибку, что и консоль. Повторите попытку по localhost: 8983 (производство). для моего случая порт 8983 работает нормально, и я меняю конфигурацию sunspot на rails/config/sunspot.yml на порт: 8983. и решили.

Ответ 8

Обновление Rsolr gem до последней версии 1.0.10.pre1, которая работала для меня.

Теперь я смог переопределить свои модели, и все кажется прекрасным, в производстве, которое есть.

Ответ 9

Для тех из вас, кто использует Websolr в производстве Heroku и получает эту ошибку при переиндексировании:

Помните, что вы должны загружать свой schema.xml вручную в графическом интерфейсе администратора Websolr на вкладке "Расширенная настройка" при просмотре вашего индекса. Здесь прямая ссылка: https://websolr.com/slices/<index_uri>/schema

Вы можете запустить <index_uri> из heroku config и получить его из последней части вашего WEBSOLR_URL выглядит следующим образом: http://index.websolr.com/solr/<index_uri>

Я столкнулся с этой ошибкой, потому что я ошибочно предположил, что Websolr просто использует schema.xml, который я передал в git, и нажал на герою вместе со всеми другими <appname>/solr/conf файлами.