Мышление Сфинкс не индексирует новые записи - PullRequest
4 голосов
/ 13 января 2010

Я использую sphinx для поиска по 2 моделям вместе с их ассоциациями. Я использую дельта-индексацию. На моем устройстве dev все работает нормально в режиме dev (Ubuntu). Тем не менее, когда я создаю новые записи, при создании конечной рабочей среды мне нужно снова создать индекс, чтобы вновь создаваемые записи были доступны для поиска. Даже странно, что когда я создаю записи, используя скрипт / консоль, они, похоже, индексируются и доступны для поиска.

Чтобы ассоциации работали после обновления, у меня есть метод after_save для всех моделей ассоциаций, которые устанавливают для дельты этих двух записей модели значение true. Я не уверен, имеет ли это какое-либо отношение к этому.

Я проверил разрешения, думая, что версия sphinx gem и все они в порядке. Что может быть не так?

EDIT

Я также проверил http://freelancing -god.github.com / ts / en / common_issues.html # deltas , но, похоже, это не работает. И да, сервер работает на фьюжн пассажира.

1 Ответ

1 голос
/ 13 июля 2012

У меня было что-то вроде этой точной проблемы, и я думаю, что это была проблема разрешения зависимостей.

Смотрите мой пост здесь .

Каким-то образом, я думаю, что обновленная версия think-sphinx была установлена ​​на моей машине через гем, а я все еще устанавливал ее через apt-get. Я очистил его с помощью apt, а затем переустановил. После этого я обнаружил, что у меня есть специальное поле в таблице, которое не следует использовать: type, и я отредактировал миграцию, чтобы удалить тип и снова добавить его под другим именем. Тогда это сработало. Вы должны опубликовать свой соответствующий код для моделей, действие контроллера, которое вызывает поиск, любой заметный вывод при вызове любой из команд rake. Попробуйте удалить драгоценный камень, а затем переустановить его. Затем удалите пакет apt и переустановите его.

...