diff --git a/postfix/HISTORY b/postfix/HISTORY index 342974176..9557aef4a 100644 --- a/postfix/HISTORY +++ b/postfix/HISTORY @@ -13166,6 +13166,19 @@ Apologies for any names omitted. minor updates: global/dict_ldap.c, mantools/postlink, tlsmgs/tlsmgr.c, conf/master.cf. LaMont Jones. +20070101 + + Portability: GNU Hurd support for multiple kernel environments. + LaMont Jones. Files: util/sys_defs.h, makedefs. + + Cleanup: some default settings were adjusted to better fit + today's environment: queue_run_delay and minimal_backoff_time + were reduced from 1000s to 300s, so that deliveries are + retried earlier after the first failure; ipc_idle was reduced + from 100s to 5s, so that tlsmgr and scache clients will + more quickly release unused file handles. Files: + global/mail_params.h, proto/postconf.5.html + Wish list: Update message content length when adding/removing headers. @@ -13186,8 +13199,9 @@ Wish list: Make postmap header/body aware so people can test multi-line header checks. - Investigate if clients of single-instance servers such as - tlsmgr, verify, can close sockets earlier. + Eliminate Linux 1024 select() file handle bottleneck and + eliminate select()/poll() scaling problems by implementing + kqueue(2) and epoll(2) support. REDIRECT should override original recipient info, and probably override DSN as well. diff --git a/postfix/RELEASE_NOTES b/postfix/RELEASE_NOTES index 8a7ad29d4..31d0925a8 100644 --- a/postfix/RELEASE_NOTES +++ b/postfix/RELEASE_NOTES @@ -17,6 +17,19 @@ Incompatibility with Postfix 2.2 and earlier If you upgrade from Postfix 2.2 or earlier, read RELEASE_NOTES-2.3 before proceeding. +Incompatibility with Postfix snapshot 20070201 +============================================== + +Some default settings have been adjusted to better match contemporary +requirements: + +- queue_run_delay and minimal_backoff_time were reduced from 1000s +to 300s so that deliveries are retried earlier after the first +failure. + +- ipc_idle was reduced from 100s to 5s, so that tlsmgr and scache +clients will more quickly release unused file handles. + Major changes with Postfix snapshot 20070121 ============================================ diff --git a/postfix/html/oqmgr.8.html b/postfix/html/oqmgr.8.html index 7c8dd8484..a17925cd1 100644 --- a/postfix/html/oqmgr.8.html +++ b/postfix/html/oqmgr.8.html @@ -232,7 +232,7 @@ OQMGR(8) OQMGR(8) Idem, for delivery via the named message transport. OTHER RESOURCE AND RATE CONTROLS - minimal_backoff_time (1000s) + minimal_backoff_time (version dependent) The minimal time between attempts to deliver a deferred message. @@ -244,7 +244,7 @@ OQMGR(8) OQMGR(8) The maximal time a message is queued before it is sent back as undeliverable. - queue_run_delay (1000s) + queue_run_delay (version dependent) The time between deferred queue scans by the queue manager. diff --git a/postfix/html/postconf.5.html b/postfix/html/postconf.5.html index e2dd877d8..b18668161 100644 --- a/postfix/html/postconf.5.html +++ b/postfix/html/postconf.5.html @@ -3032,7 +3032,7 @@ Do not change this unless you have a complete understanding of ipc_idle -(default: 100s)
The time after which a client closes an idle internal communication @@ -3041,6 +3041,8 @@ after they become idle. This is used, for example, by the address resolving and rewriting clients.
+With Postfix 2.4 the default value was reduced from 100s to 5s.
+Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). The default time unit is s (seconds). @@ -5250,7 +5252,7 @@ This feature is available in Postfix 2.0 and later.
The minimal time between attempts to deliver a deferred message. @@ -5258,6 +5260,9 @@ This parameter also limits the time an unreachable destination is kept in the short-term, in-memory, destination status cache.
+With Postfix 2.4 the default value was reduced from 1000s to +300s.
+This parameter should be set greater than or equal to $queue_run_delay. See also $maximal_backoff_time.
@@ -6050,12 +6055,16 @@ zero means there is no minimum required amount of free space.The time between deferred queue scans by the queue manager.
++With Postfix 2.4 the default value was reduced from 1000s to 300s. +
+This parameter should be set less than or equal to $minimal_backoff_time. See also $maximal_backoff_time.
diff --git a/postfix/html/qmgr.8.html b/postfix/html/qmgr.8.html index e3c75a45d..6679ec2cc 100644 --- a/postfix/html/qmgr.8.html +++ b/postfix/html/qmgr.8.html @@ -305,7 +305,7 @@ QMGR(8) QMGR(8) Idem, for delivery via the named message transport. OTHER RESOURCE AND RATE CONTROLS - minimal_backoff_time (1000s) + minimal_backoff_time (version dependent) The minimal time between attempts to deliver a deferred message. @@ -317,7 +317,7 @@ QMGR(8) QMGR(8) The maximal time a message is queued before it is sent back as undeliverable. - queue_run_delay (1000s) + queue_run_delay (version dependent) The time between deferred queue scans by the queue manager. diff --git a/postfix/makedefs b/postfix/makedefs index e4ed531a2..31b1c9ead 100644 --- a/postfix/makedefs +++ b/postfix/makedefs @@ -266,6 +266,42 @@ case "$SYSTEM.$RELEASE" in 2.[0-3].*) CCARGS="$CCARGS -DNO_IPV6";; esac ;; + GNU.0.*) + SYSTYPE=GNU0 + # Postfix no longer needs DB 1.85 compatibility + if [ -f /usr/include/db.h ] + then + : we are all set + elif [ -f /usr/include/db/db.h ] + then + CCARGS="$CCARGS -I/usr/include/db" + else + # No, we're not going to try db1 db2 db3 etc. + # On a properly installed system, Postfix builds + # by includingThe time after which a client closes an idle internal communication @@ -1828,6 +1828,8 @@ after they become idle. This is used, for example, by the address resolving and rewriting clients.
+With Postfix 2.4 the default value was reduced from 100s to 5s.
+Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). The default time unit is s (seconds). @@ -2618,7 +2620,7 @@ Specify 0 when mail delivery should be tried only once. The maximal size in bytes of a message, including envelope information.
-%PARAM minimal_backoff_time 1000s +%PARAM minimal_backoff_time version dependentThe minimal time between attempts to deliver a deferred message. @@ -2626,6 +2628,9 @@ This parameter also limits the time an unreachable destination is kept in the short-term, in-memory, destination status cache.
+With Postfix 2.4 the default value was reduced from 1000s to +300s.
+This parameter should be set greater than or equal to $queue_run_delay. See also $maximal_backoff_time.
@@ -3069,12 +3074,16 @@ With Postfix versions 2.0 and earlier, a queue_minfree value of zero means there is no minimum required amount of free space. -%PARAM queue_run_delay 1000s +%PARAM queue_run_delay version dependentThe time between deferred queue scans by the queue manager.
++With Postfix 2.4 the default value was reduced from 1000s to 300s. +
+This parameter should be set less than or equal to $minimal_backoff_time. See also $maximal_backoff_time.
diff --git a/postfix/src/global/mail_params.h b/postfix/src/global/mail_params.h index 34c2ed951..75cd22c99 100644 --- a/postfix/src/global/mail_params.h +++ b/postfix/src/global/mail_params.h @@ -632,10 +632,10 @@ extern char *var_relocated_maps; * queue before it is sent back. */ #define VAR_QUEUE_RUN_DELAY "queue_run_delay" -#define DEF_QUEUE_RUN_DELAY "1000s" +#define DEF_QUEUE_RUN_DELAY "300s" #define VAR_MIN_BACKOFF_TIME "minimal_backoff_time" -#define DEF_MIN_BACKOFF_TIME "1000s" +#define DEF_MIN_BACKOFF_TIME DEF_QUEUE_RUN_DELAY extern int var_min_backoff_time; #define VAR_MAX_BACKOFF_TIME "maximal_backoff_time" @@ -813,7 +813,7 @@ extern int var_event_drain; * IPC connection before closing it because it is idle for too much time. */ #define VAR_IPC_IDLE "ipc_idle" -#define DEF_IPC_IDLE "100s" +#define DEF_IPC_IDLE "5s" extern int var_ipc_idle_limit; /* diff --git a/postfix/src/global/mail_version.h b/postfix/src/global/mail_version.h index 99c1fcd15..6cfd84f5e 100644 --- a/postfix/src/global/mail_version.h +++ b/postfix/src/global/mail_version.h @@ -20,7 +20,7 @@ * Patches change both the patchlevel and the release date. Snapshots have no * patchlevel; they change the release date only. */ -#define MAIL_RELEASE_DATE "20070131" +#define MAIL_RELEASE_DATE "20070201" #define MAIL_VERSION_NUMBER "2.4" #ifdef SNAPSHOT diff --git a/postfix/src/oqmgr/qmgr.c b/postfix/src/oqmgr/qmgr.c index a61ad4064..84baa7cac 100644 --- a/postfix/src/oqmgr/qmgr.c +++ b/postfix/src/oqmgr/qmgr.c @@ -192,14 +192,14 @@ /* OTHER RESOURCE AND RATE CONTROLS /* .ad /* .fi -/* .IP "\fBminimal_backoff_time (1000s)\fR" +/* .IP "\fBminimal_backoff_time (version dependent)\fR" /* The minimal time between attempts to deliver a deferred message. /* .IP "\fBmaximal_backoff_time (4000s)\fR" /* The maximal time between attempts to deliver a deferred message. /* .IP "\fBmaximal_queue_lifetime (5d)\fR" /* The maximal time a message is queued before it is sent back as /* undeliverable. -/* .IP "\fBqueue_run_delay (1000s)\fR" +/* .IP "\fBqueue_run_delay (version dependent)\fR" /* The time between deferred queue scans by the queue manager. /* .IP "\fBtransport_retry_time (60s)\fR" /* The time between attempts by the Postfix queue manager to contact diff --git a/postfix/src/qmgr/qmgr.c b/postfix/src/qmgr/qmgr.c index 8a2349784..4ab22b02d 100644 --- a/postfix/src/qmgr/qmgr.c +++ b/postfix/src/qmgr/qmgr.c @@ -238,14 +238,14 @@ /* OTHER RESOURCE AND RATE CONTROLS /* .ad /* .fi -/* .IP "\fBminimal_backoff_time (1000s)\fR" +/* .IP "\fBminimal_backoff_time (version dependent)\fR" /* The minimal time between attempts to deliver a deferred message. /* .IP "\fBmaximal_backoff_time (4000s)\fR" /* The maximal time between attempts to deliver a deferred message. /* .IP "\fBmaximal_queue_lifetime (5d)\fR" /* The maximal time a message is queued before it is sent back as /* undeliverable. -/* .IP "\fBqueue_run_delay (1000s)\fR" +/* .IP "\fBqueue_run_delay (version dependent)\fR" /* The time between deferred queue scans by the queue manager. /* .IP "\fBtransport_retry_time (60s)\fR" /* The time between attempts by the Postfix queue manager to contact diff --git a/postfix/src/util/sys_defs.h b/postfix/src/util/sys_defs.h index c8ca62672..63e9e3c90 100644 --- a/postfix/src/util/sys_defs.h +++ b/postfix/src/util/sys_defs.h @@ -736,6 +736,69 @@ extern int initgroups(const char *, int); #define NATIVE_DAEMON_DIR "/usr/libexec/postfix" #define CANT_USE_SEND_RECV_MSG #define DEF_SMTP_CACHE_DEMAND 0 +#endif + + /* + * GNU. + */ +#ifdef GNU0 +#define SUPPORTED +#include