Как я уже говорил, старый сайт работает. Я сделал резервную копию и попытался восстановить её на чистой установке, но восстановление не удалось. Я изменил сообщение, указанное как причина проблемы, после чего восстановление на чистой установке прошло успешно. Однако проблема с Sidekiq всё ещё сохраняется.
Старый сайт также работает на PostgreSQL 13 (но существует уже несколько лет, так что скорее всего изначально он не запускался с этой версией
)
root@discourse-old:/var/discourse# ./launcher enter app
x86_64 arch detected.
root@discourse-app:/var/www/discourse# psql --version
psql (PostgreSQL) 13.5 (Debian 13.5-1.pgdg110+1)
Таким образом, согласно заключительным комментариям в этом посте, база данных Discourse может быть повреждена — и может быть исправлена.
Попробовал с новым пользователем: письмо с регистрацией пришло корректно. Но уведомления на ответы к его постам не приходят — Sidekiq выдаёт ошибку.
Значит, по-моему, Discourse передаёт Sidekiq некорректную информацию, когда instructs его отправлять уведомления (в отличие от регистрационных писем). Как продолжить отладку?