<spool>set by the Hub
The default is false. The line decides the fate of file holders — temporary files the engine deliberately leaves in the spool directory to save on I/O.
The point of the technique is that creating a file costs more than reusing one already created. A holder left behind spares that work next time.
With true, holders are deleted after the message is delivered — the directory stays clean, but every new message creates its file anew.
This is a classic trade-off: space and file count versus write speed.
So the I/O saved on one message turns into I/O lost on all the others. Where the boundary lies depends on the file system and the volume — it can only be found out by counting the files in the directory.
For the fleet this is the right choice: nodes live long and unattended, their volume is uneven, and files piling up in the spool is the kind of failure that gets noticed late. The saving on creating a file is incommensurable with the risk at our volumes.
What to set. The trade-off is weighed by volume and by supervision:
| Value | When |
|---|---|
| false (default) | a steady high flow and an eye on the spool: the I/O saving pays off |
| true | an uneven flow or an unattended node — the directory stays clean |
The second is safer and therefore usually right for a fleet: the price is creating a file for each message, and that is cheap at any reasonable volume.
# this is how the Hub writes the configuration — the directory stays clean <spool /var/spool/pmta> deliver-only no delete-file-holders yes</spool>
what people get wrong and how it ends2 mistakes▶
our experience
§ 3.3.2.1
1 relation
grep -n -A4 '^<spool' /etc/pmta/config find /var/spool/pmta -type f | wc -l
3 articles
◇The activation key is a prerequisite for installation, not a step after itWithout an activation key from SparkPost support the engine neither installs nor runs, and the license tier sets the outbound connection ceiling: on Standard everything above 200 is ignored.◇Cloud restrictionsClouds restrict outbound mail on port 25 until you ask them to lift the limit, and mailbox providers treat their address ranges with suspicion.◇How to turn a sending plan into hardwareTwo constants for sizing any node: about 2 KB of memory per queued recipient and spool space proportional to the total size of the messages.