1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
|
<html> <head> </head> <body> <pre>
FLUSH(8) FLUSH(8)
<b>NAME</b>
flush - Postfix fast flush server
<b>SYNOPSIS</b>
<b>flush</b> [generic Postfix daemon options]
<b>DESCRIPTION</b>
The flush server maintains a record of deferred mail by
destination. This information is used to improve the per-
formance of the SMTP <b>ETRN</b> request, and of its command-line
equivalent, <b>sendmail</b> <b>-qR</b>. This program expects to be run
from the <a href="master.8.html"><b>master</b>(8)</a> process manager.
The record is implemented as a per-destination logfile
with as contents the queue IDs of deferred mail. A logfile
is append-only, and is truncated when delivery is
requested for the corresponding destination. A destination
is the part on the right-hand side of the right-most <b>@</b> in
an email address.
Per-destination logfiles of deferred mail are maintained
only for eligible destinations. The list of eligible des-
tinations is specified with the <b>fast</b><i>_</i><b>flush</b><i>_</i><b>domains</b> config-
uration parameter, which defaults to <b>$relay</b><i>_</i><b>domains</b>.
This server implements the following requests:
<b>FLUSH</b><i>_</i><b>REQ</b><i>_</i><b>ADD</b> <i>sitename</i> <i>queue_id</i>
Inform the fast flush server that the specified
message is queued for <i>sitename</i>. Depending on log-
ging policy, the fast flush server stores or
ignores the information.
<b>FLUSH</b><i>_</i><b>REQ</b><i>_</i><b>SEND</b> <i>sitename</i>
Request delivery of mail that is queued for <i>site-</i>
<i>name</i>. If the destination is eligible for a fast
flush logfile, this request triggers delivery of
messages listed in that destination's logfile, and
the logfile is truncated to zero length; if mail is
undeliverable it will be added back to the logfile.
If the destination is not eligible for a fast flush
logfile, this request is rejected (see below for
status codes).
<b>TRIGGER</b><i>_</i><b>REQ</b><i>_</i><b>WAKEUP</b>
This wakeup request from the master is an alterna-
tive way to request <b>FLUSH</b><i>_</i><b>REQ</b><i>_</i><b>REFRESH</b>.
<b>FLUSH</b><i>_</i><b>REQ</b><i>_</i><b>REFRESH</b> (completes in the background)
Refresh non-empty per-destination logfiles that
were not read in <b>fast</b><i>_</i><b>flush</b><i>_</i><b>refresh</b><i>_</i><b>time</b> hours, by
simulating send requests (see above) for the corre-
sponding destinations.
Delete empty per-destination logfiles that were not
updated in <b>fast</b><i>_</i><b>flush</b><i>_</i><b>purge</b><i>_</i><b>time</b> days.
<b>FLUSH</b><i>_</i><b>REQ</b><i>_</i><b>PURGE</b> (completes in the background)
Refresh all non-empty per-destination logfiles, by
simulating send requests (see above) for the corre-
sponding destinations. This can be incredibly
expensive when logging is enabled for many destina-
tions, and is not recommended.
Delete empty per-destination logfiles that were not
updated in <b>fast</b><i>_</i><b>flush</b><i>_</i><b>purge</b><i>_</i><b>time</b> days.
The server response is one of:
<b>FLUSH</b><i>_</i><b>STAT</b><i>_</i><b>OK</b>
The request completed normally.
<b>FLUSH</b><i>_</i><b>STAT</b><i>_</i><b>BAD</b>
The flush server rejected the request (bad request
name, bad request parameter value).
<b>FLUSH</b><i>_</i><b>STAT</b><i>_</i><b>FAIL</b>
The request failed.
<b>FLUSH</b><i>_</i><b>STAT</b><i>_</i><b>DENY</b>
The request was denied because the destination
domain is not eligible for fast flush service, or
because the fast flush service is disabled.
<b>SECURITY</b>
The fast flush server is not security-sensitive. It does
not talk to the network, and it does not talk to local
users. The fast flush server can run chrooted at fixed
low privilege.
<b>DIAGNOSTICS</b>
Problems and transactions are logged to <b>syslogd</b>(8).
<b>BUGS</b>
Fast flush logfiles are truncated only after a
<b>FLUSH</b><i>_</i><b>REQ</b><i>_</i><b>SEND</b> request, not when mail is actually deliv-
ered, and therefore can accumulate outdated or redundant
data. In order to maintain sanity, <b>FLUSH</b><i>_</i><b>REQ</b><i>_</i><b>REFRESH</b> must
be executed periodically. This can be automated with a
suitable wakeup timer setting in the <b>master.cf</b> configura-
tion file.
Upon receipt of a request to deliver all mail for an eli-
gible destination, the <b>flush</b> server requests delivery of
all messages that are listed in that destination's log-
file, regardless of the recipients of those messages. This
is not an issue for mail that is sent to a <b>relay</b><i>_</i><b>domains</b>
destination because such mail typically only has recipi-
ents in one domain.
<b>FILES</b>
/var/spool/postfix/flush, location of "fast flush" logfiles.
<b>CONFIGURATION</b> <b>PARAMETERS</b>
See the Postfix <b>main.cf</b> file for syntax details and for
default values. Use the <b>postfix</b> <b>reload</b> command after a
configuration change.
<b>fast</b><i>_</i><b>flush</b><i>_</i><b>domains</b>
What destinations can have a "fast flush" logfile.
By default, this is set to <b>$relay</b><i>_</i><b>domains</b>.
<b>fast</b><i>_</i><b>flush</b><i>_</i><b>refresh</b><i>_</i><b>time</b>
Refresh a non-empty "fast flush" logfile that was
not read in this amount of time (default time unit:
hours), by simulating a send request for the corre-
sponding destination.
<b>fast</b><i>_</i><b>flush</b><i>_</i><b>purge</b><i>_</i><b>time</b>
Remove an empty "fast flush" logfile that was not
updated in this amount of time (default time unit:
days).
<b>parent</b><i>_</i><b>domain</b><i>_</i><b>matches</b><i>_</i><b>subdomains</b>
List of Postfix features that use <i>domain.tld</i> pat-
terns to match <i>sub.domain.tld</i> (as opposed to
requiring <i>.domain.tld</i> patterns).
<b>SEE</b> <b>ALSO</b>
<a href="smtpd.8.html">smtpd(8)</a> Postfix SMTP server
<a href="qmgr.8.html">qmgr(8)</a> Postfix queue manager
syslogd(8) system logging
<b>LICENSE</b>
The Secure Mailer license must be distributed with this
software.
<b>AUTHOR(S)</b>
Wietse Venema
IBM T.J. Watson Research
P.O. Box 704
Yorktown Heights, NY 10598, USA
FLUSH(8)
</pre> </body> </html>
|