too-many-rcpts-fails-message

<source>

Валит ли превышение числа получателей всё письмо целиком
в конфигурации это строкаtoo-many-rcpts-fails-message falseвнутри блока <source>
Отказать лишним или отказать всем

Умолчание — false. Строка решает, как именно MTA применяет предел max-rcpt-per-message.

С умолчанием лишние получатели отвергаются по одному, на команде RCPT: письмо уходит остальным. С true MTA отвергает письмо целиком, на команде DATA, — не уходит никому.

Разница в том, что считать правильным исходом. Частичная доставка проще для узла, но подающая сторона может о ней не узнать: отказы по отдельным получателям легко пропустить в потоке ответов. Отказ письма заметен сразу.

Главная ловушка — молчаливая частичная доставка. С умолчанием письмо, у которого получателей больше предела, всё-таки уходит — части адресов. Подающая платформа, не разбирающая ответы на каждую строку RCPT, посчитает рассылку успешной, а часть аудитории её не получит.

Обнаруживается это по расхождению чисел: отправлено столько, доставлено меньше, и отказов при этом нет.

Что делает Хаб. Не пишет ни эту строку, ни сам предел max-rcpt-per-message — оба остаются в вендорском умолчании.

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

Рекомендуемые значения

Что ставить. Вопрос — что должна увидеть подающая сторона:

Значение Когда
false (умолчание) частичная доставка приемлема, и платформа читает отказы по каждому получателю
true лучше не отправить никому, чем отправить части и не заметить этого

Второе строже и обычно честнее для рассылки: расхождение «отправлено больше, чем доставлено» без единого отказа разбирается долго.

Умолчание false и разбор «отказ на RCPT против отказа на DATA» — из руководства, § 3.3.7.40. Разбивка случаев наша.
Пример в конфигурации
# предел и способ его применения — две строки, работающие вместе
<source 0/0>
    max-rcpt-per-message 100
    too-many-rcpts-fails-message true</source>
Письмо со ста одним получателем будет отвергнуто целиком на команде DATA. Без второй строки сто получателей его получили бы, а сто первый — нет.
жёлтым — — имена директив, голубым — блоки. Так же они подсвечены и в тексте карточки.
▲

Типичные ошибки и проблемы

что делают не так и чем это кончается2 ошибки▶

Ставят строку, не задав предела

§ 3.3.7.40

Чем чреватоПрименять нечего: без предела число получателей не ограничено, и отвергать письмо не за что. Строка выглядит работающей настройкой.
Как заметитьСтрока есть, поведение не меняется ни при каком числе получателей.
Как правильноЗадать предел в том же блоке источника.

Оставляют умолчание при платформе, не читающей отказы

наш опыт

Чем чреватоПисьмо уходит части получателей молча. В отчётах платформы рассылка успешна, а расхождение с числом доставок объясняется неизвестно чем.
Как заметитьДоставок стабильно меньше, чем отправок, при отсутствии отказов.
Как правильноВключить отказ письма целиком — тогда платформа увидит проблему сразу.
Совместимость
PowerMTA 6.0
описана в руководстве этой версии · платформа: любая
С какой версии директива доступна, вендор указывает не для всех — здесь пометки нет. Имя встречается и в издании руководства 5.0.
Справочные данные
Синтаксис
too-many-rcpts-fails-message <boolean>
Значения
yes | no | true | false
Умолчание
false § 3.3.7.40
Применение
reload, перезапуск не нужен
Очередь
уже поставленное в очередь не затронет
Где писать
<source>
Сколько раз
один раз в блоке
Всё здесь — из руководства, с разделом.
Наследование
Директива живёт в <source> и подчиняется слиянию источников: соединение попадает под все адресные блоки, которые его накрывают, и узкий перекрывает широкий. Осмысленной она становится только там, где в том же слитом наборе задан и сам предел числа получателей.
Как проверить на узле
Обе строки проверяются вместе — порознь эта ничего не решает:
grep -n 'max-rcpt-per-message\|too-many-rcpts-fails-message' /etc/pmta/config /etc/pmta/virtualhost.txt
Если предел не задан, строка не проявится никак. Само поведение проверяется подачей письма с числом получателей заведомо больше предела.
В Хабе
Цена ошибки
обратимо: вредит, пока стоит
Сценарии
Подключить платформу отправки