#ruby-on-rails #ruby #thinking-sphinx
#ruby-on-rails #ruby #мышление-сфинкс
Вопрос:
У меня проблема с запуском Sphinx в тесте
Как это было показано в примере ThinkingSphinx
Я начинаю тест с ThinkingSphinx::Test.start и заканчиваю ThinkingSphinx::Test.stop
Раздел head тестового файла содержит
требуется ‘thinking_sphinx /test’
ThinkingSphinx::Test.init
Ошибка заключается в
Не удалось запустить демон searchd. Проверьте …searchd.log.
Вы знакомы с этим?
Спасибо!
Ответ №1:
Вы используете Sphinx уже в разработке? И если да, есть ли у вас другая настройка порта для тестовой среды в config/sphinx.yml
? Если нет, то вам нужно будет сделать это, чтобы убедиться, что у вас могут быть запущены два демона одновременно.
Комментарии:
1. отлично, теперь он запускается, но не работает. Сфинкс не видит новые записи. У меня есть ThinkingSphinx::Test.start в начале теста, ThinkingSphinx::Test.stop в конце и ThinkingSphinx::Test.index после добавления. Но в отладчике Sphinx не видит новых записей
2. на самом деле, когда я вставляю новые записи в раздел describe перед all, Sphinx работает иначе, не
3. Используете ли вы транзакции? Поскольку Sphinx работает как отдельный процесс, вы не можете использовать транзакции в тестах, использующих Sphinx.
4. То есть вы не можете использовать транзакционные приспособления (сами транзакции являются неотъемлемой частью MySQL и PostgreSQL).
Ответ №2:
Я получал ту же проблему. Моя папка tmp отсутствовала. Это решилось, как только я это сделал. Спасибо