Отличная работа, @RGJ!
Пока мы ожидаем исправления, хочу отметить, что было бы хорошо, если бы эта проблема не вызывала каскад сбоев, с которыми столкнулся я, и которые почти полностью вывели мой форум из строя. В частности:
- Сбои при отправке электронной почты, похоже, повторяются чрезвычайно быстро, из-за чего очередь Sidekiq разрастается до огромных размеров, а загрузка ЦП достигает ~100% из-за этих задач.
- Кроме того, что-то (либо сбои, либо перезапуски) заставляло Redis записывать огромные временные файлы, которые, предположительно, содержат состояние очереди Sidekiq. Хотя эти файлы можно было безопасно удалить, они быстро заполнили диск, что вызвало новые сбои, и так далее. У меня было немного дополнительного места на диске, которое я смог освободить, чтобы перезапустить форум и разобраться в ситуации, но это может быть не так для всех. (Также довольно сложно подтвердить, что в данном случае временные файлы Redis действительно безопасно удалять.)
Мне кажется, что самое простое решение здесь — замедлить повторные попытки выполнения задач отправки электронной почты при сбоях, или хотя бы тех, у которых нет строгих требований к срочности, таких как сброс пароля. Это кажется уместным, учитывая, что проблемы с электронной почтой вряд ли быстро устранятся, и большинство (если не все) почтовые сервисы сами будут повторять попытки после получения сообщения.