<domain>
The default is 50, exactly the middle of the scale.
It works like this: the engine needs to deliver a queue’s messages, and there are no free connections. Then it looks for a connected queue with a lower priority and interrupts as many of its connections as needed — starting with the lowest-priority ones and moving up.
That is, the number decides not “whom to serve first” in general, but whose connection can be taken away when there are not enough of them.
The scale: the directive’s section gives the range from 0 (lowest) to 100 (highest); the section on priorities gives from 1 to 100. The discrepancy is one value.
The same line used to have a different name: delivery-priority has been declared obsolete in favor of this one.
The other half is that interruption is not free. A taken connection is interrupted work: the receiver sees a disconnect, and reconnecting costs time on both your side and theirs. Frequent priority reshuffles on a loaded node produce more disconnects than benefit.
The Hub separates urgent and bulk mail differently: with separate sending addresses. Warm-up has its own stream with its own limits, the mailing has its own — they do not compete for the same connections and therefore do not need priorities.
What to set. The numbers make sense only relative to each other:
| Value | When |
|---|---|
| 50 (default) | ordinary mail — all queues are equal |
| above 50 | a direction that must not wait: confirmations, password resets |
| below 50 | a bulk mailing that can give way |
Spread them noticeably, not by single units: the difference between 50 and 55 gives nothing meaningful, while between 25 and 75 it does. And remember not to use zero: the manual speaks about it with two voices.
# confirmations should not wait behind a mailing <domain someplace.com> queue-priority 75</domain> <virtual-mta newsletter> <domain someplaceelse.com> queue-priority 30 </domain> </virtual-mta>
what people get wrong and how it ends3 mistakes▶
§ 3.3.10.14
our experience
our experience
2 relations
total-max-smtp-outGlobalPriorities start to work exactly when this ceiling is reached. § 3.3.1.2
grep -n 'queue-priority' /etc/pmta/config /etc/pmta/virtualhost.txt pmta show queues --connected=yes --maxitems=20
3 articles
◇Four value types the whole config is written inBoolean, domain pattern, regular expression and time interval — defined once in § 3.2 and then used by all directives.◇How the policy for a receiver is assembledSettings are assembled from the most general pattern to the most precise; the order of blocks in the file means nothing.◇Backoff mode — the queue's second personalityA queue that a receiver has started refusing switches to a parallel set of limits, retries and routes — ten directives that act only in this mode.