Это довольно странно.У меня есть 3 модели (A, B, C).Работали отлично, когда crontab запускает его.
Недавно у меня возникла проблема с индексированием новых записей для модели A.
Когда я вызываю rake ts:index RAILS_ENV=production
вручную, индексация выполняется нормально.Нет ошибок, проблема.Но обновляются только модели B, C.Модель А не обновляется.Я проверил все журналы, не было никаких проблем.
Вот searchd.log
:
[Mon Nov 29 15:02:27.920 2010] [ 7280] rotating indices (seamless=1)
[Mon Nov 29 15:02:28.211 2010] [ 7280] rotating index 'b_core': success
[Mon Nov 29 15:02:28.215 2010] [ 7280] rotating index 'c_core': success
[Mon Nov 29 15:02:28.216 2010] [ 7280] rotating finished
Здесь вы заметите, a_core
не появляется.Все это пока все работало нормально.Когда я увидел, что он работает, он индексировал A
, но когда я проверял свой sphinx db, когда он последний раз обновлялся, он не обновлялся.Разрешения для всех Sphinx db одинаковы.
Единственный способ обеспечить правильную индексацию - это удалить старый sphinx db и вызвать весь ts:rebuild
.Хотя я не пытался удалить production.sphinx.conf
.
Я пытался добавить дельта-индексацию в прошлом до того, как это произошло.Ну, дельта-индексация не могла работать как-то, но нормальная индексация была в порядке.Затем индексация сломалась для модели А. Я так и не понял, что она сломалась.Затем я отключил дельта-индексацию, не удаляя столбец.(Я все еще не знал, что индексирование работало нормально для модели A).Затем сегодня я узнал, что существует проблема с индексацией модели А.Поэтому я подумал, что, возможно, я не удалил дельта-столбец в моей базе данных.Поэтому я удалил столбец, перезапустил MySQL, Apache и модель. Индекс по-прежнему не обновляется.
На самом деле я не думаю, что это как-то связано с дельта-индексированием.Поскольку я добавил, то удалил дельта-индексацию для всех моделей A, B, C.Если он сломается, он должен сломать все вместо одной модели.
Пожалуйста, помогите.Спасибо.
РЕДАКТИРОВАТЬ Модель A
# ThinkingSphinx Index
define_index do
indexes :name, :sortable => true
indexes address
indexes city
indexes state
indexes country
indexes spot_type
indexes season
indexes description
has rating_average
# set_property :delta => true
end
Модель B
# ThinkingSphinx Index
define_index do
indexes name
indexes duration
has budget, created_at, rating_average
# set_property :delta => true
end