FAQ. The REDIS database used by another copy of the USERSIDE

Материал из WiKi - UserSide
Версия от 10:34, 19 июня 2023; Uscld2 (обсуждение | вклад) (Новая страница: «При использовании нескольких копий USERSIDE на одном хосте часто возникает проблема, связанная с ошибочным использованием для нескольких копий одной и той же базы данных Redis. Это приводит к тому, что закэшированные данные между двумя версиями пересекаютс...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

При использовании нескольких копий USERSIDE на одном хосте часто возникает проблема, связанная с ошибочным использованием для нескольких копий одной и той же базы данных Redis.

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

Чтобы избежать таких ошибок мы привязали базу данных Redis к конкретному URL системы и при попытке использовать ту же самую базу данных на другой копии (с другим URL) вы получите ошибку:

The REDIS database number <0> used by another copy of the USERSIDE with URL http://another.userside.net

Такую ошибку вы можете получить как в инсталляторе, так и в WEB-приложении. Она означает, что при работе с указанной в конфигурационном файле базой данных было обнаружена разница текущего URL системы и того, за которым закреплена эта база данных Redis.

Если вы действительно забыли изменить базу данных для копии, то решением будет использовать другую базу данных (номера с 0 по 16 по умолчанию) для каждой вашей копии.

Если же вы изменили URL для конкретной инсталляции (например, с http на https или как-то еще), то вам может просто потребоваться сбросить привязку базы данных Redis к старому URL. Для этого выполните команду:

sudo -u www-data php userside_install.phar remove_cached_url

Данная защитная мера является информационной и не может защитить вас от использования одной и той же базы данных Redis на разных копиях, если вы специально удалили привязку.