Дельта Сфинкса во время переиндексации обновляет все пользовательские записи, меняя токен - PullRequest
0 голосов
/ 12 ноября 2011

Я испытываю странную проблему с моей настройкой sphinx в моей промежуточной среде, где каждые пару минут мой cronjob запускает реиндекс, и во время ротации дельты каждая запись пользователя обновляется, меняя свой маркер постоянства. Это приводит к тому, что все пользовательские сеансы с authlogic завершаются из-за измененного токена постоянства.

Мне не удалось найти способ исправить это или точно, почему это происходит, за исключением того, что это происходит во время ротации индекса пользователя. Я был на версии 2.0.5 и обновился до 2.0.10, но это не решает проблему. Что очень странно, так это то, что моя производственная среда работает нормально и не сталкивается с этой проблемой при идентичной конфигурации сервера / gemfile. Мы не сможем обновить производство, пока не решим эту проблему, чтобы убедиться, что она не начинается на нашем производственном сервере.

Любая помощь в поиске причины или решения будет принята с благодарностью.

Я не совсем понимаю, почему переиндексация приведет к обновлению всех пользовательских записей и изменению их маркера постоянства.

Разве атрибут delta не должен быть единственным атрибутом, который обновляется в записях пользователя, когда происходит переиндексация?

Возможно, Authlogic по какой-то неизвестной причине также обновляет токен персистентности во время обновления дельта-атрибута? Я пробовал обе версии Authlogic 3.0.3 и 3.1.0, но это также не устранило проблему.

1 Ответ

0 голосов
/ 12 ноября 2011

удалось отследить это до инициализатора, который обновлял всех промежуточных пользователей каждый раз, когда запускался новый пассажирский экземпляр. Был не связан со сфинксом и был вызван тем, как Authlogic генерировал токены постоянства при смене пароля.

...