Привет! У меня возникают периодические сбои обработки входящей почты на самодостаточном сайте с использованием mail-receiver.
Что произошло
Два отдельных входящих письма:
- были доставлены на правильный адрес Discourse
- отображаются в разделе
/admin/email/received - также появляются в разделе
/admin/email/rejected - содержат общий текст отказа: «При обработке вашего письма произошла неузнаваемая ошибка, и оно не было опубликовано».
Примерно в то же время в логах зафиксировано исключение ActiveRecord::Deadlocked.
Почему я считаю, что это может быть баг
Я сравнил отклонённые письма с более поздним успешным письмом очень схожего формата:
- одинаковый шаблон отправителя
- одинаковый путь через Microsoft / Power Automate
- одинаковая видимая структура поля
To: - одинаковый получатель SMTP-конверта на адрес Discourse
Поэтому это не похоже на простую проблему конфигурации mail-receiver.
Доказательства
Для обоих отклонённых писем:
- это были отдельные доставки с разными
Message-ID - у них были разные идентификаторы очереди Postfix
- оба были доставлены
for <ppyem3.accomodation@discourse.domain.com>
Также в логах в тот же период я наблюдал исключение ActiveRecord::Deadlocked.
Контекст хостинга
- самодостаточный сервер
- используется
mail-receiver - небольшой VPS от IONOS
- настроен один веб-воркер
Я понимаю, что один веб-воркер может быть просто фоновым контекстом, а не причиной, поскольку проблема касается обработки входящей почты/фоновых задач, а не обработки веб-запросов.
Если нужно, я могу предоставить:
- заголовки двух отклонённых писем (с удалёнными конфиденциальными данными)
- заголовки успешного аналогичного письма (с удалёнными конфиденциальными данными)
- запись лога о взаимной блокировке (deadlock)