2
0
mirror of https://github.com/vdukhovni/postfix synced 2025-08-22 01:49:47 +00:00

postfix-3.10-20250207

This commit is contained in:
Wietse Z Venema 2025-02-07 00:00:00 -05:00 committed by Viktor Dukhovni
parent 47ae1804cc
commit d2018d3930
13 changed files with 84 additions and 76 deletions

View File

@ -28933,4 +28933,12 @@ Apologies for any names omitted.
policy plugin, deprecated the policy_ttl attribute. File:
proto/TLSRPT_README.html.
20250207
Performance: when a mysql: or pgsql: configuration specifies
a single host, assume that it is a load balancer and reconnect
immediately after a single failure, instead of failing all
requests for 60s. Files: global/dict_pgsql.c, global/dict_mysql.c,
proto/pgsql_table, proto/mysql_table.
Postfix 3.10 code freeze.

View File

@ -78,11 +78,9 @@ LDAP_TABLE(5) LDAP_TABLE(5)
server_host = ldap.example.com:1444
NOTE: if "server_host" specifies one load balancer and no alter-
native servers, specify the load balancer multiple times in the
"server_host" line. Without the duplicate info, the Postfix LDAP
client would not reconnect immediately to the same load balancer
after an LDAP server failure.
NOTE: this client will reconnect immediately after a single
failure, and will fail a lookup request after a second attempt
also fails.
With OpenLDAP, a (list of) LDAP URLs can be used to specify both
the hostname(s) and the port(s):

View File

@ -61,11 +61,11 @@ MYSQL_TABLE(5) MYSQL_TABLE(5)
TCP you have to specify
hosts = 127.0.0.1
NOTE: if the <b>hosts</b> setting specifies one load balancer and no
alternative servers, specify the load balancer multiple times.
Without the duplicate info, the Postfix MySQL client would not
reconnect immediately to the same load balancer after a request
failure.
NOTE: if the <b>hosts</b> setting specifies one server, this client
assumes that the target is a load balancer and will reconnect
immediately after a single failure, instead of failing all
requests temporarily. With older versions of this client, spec-
ify the same server twice.
<b>user</b>
@ -96,11 +96,11 @@ MYSQL_TABLE(5) MYSQL_TABLE(5)
The number of seconds that a database connection will be skipped
after an error.
NOTE: if the <b>hosts</b> setting specifies one load balancer and no
alternative servers, specify the load balancer multiple times.
Without the duplicate info, the Postfix MySQL client would not
reconnect immediately to the same load balancer after a request
failure.
NOTE: if the <b>hosts</b> setting specifies one server, this client
assumes that the target is a load balancer and will reconnect
immediately after a single failure, instead of failing all
requests temporarily. With older versions of this client, spec-
ify the same server twice.
This feature is available in Postfix 3.9 and later.

View File

@ -65,11 +65,11 @@ PGSQL_TABLE(5) PGSQL_TABLE(5)
URI, the Postfix PostgreSQL client will ignore the <b>dbname</b>, <b>user</b>,
and <b>password</b> settings for that connection.
NOTE: if the <b>hosts</b> setting specifies one load balancer and no
alternative servers, specify the load balancer multiple times.
Without the duplicate info, the Postfix PostgreSQL client would
not reconnect immediately to the same load balancer after a
request failure.
NOTE: if the <b>hosts</b> setting specifies one server, this client
assumes that the target is a load balancer and will reconnect
immediately after a single failure, instead of failing all
requests temporarily. With older versions of this client, spec-
ify the same server twice.
<b>user</b>
@ -112,11 +112,11 @@ PGSQL_TABLE(5) PGSQL_TABLE(5)
The number of seconds that a database connection will be skipped
after an error.
NOTE: if the <b>hosts</b> setting specifies one load balancer and no
alternative servers, specify the load balancer multiple times.
Without the duplicate info, the Postfix PostgreSQL client would
not reconnect immediately to the same load balancer after a
request failure.
NOTE: if the <b>hosts</b> setting specifies one server, this client
assumes that the target is a load balancer and will reconnect
immediately after a single failure, instead of failing all
requests temporarily. With older versions of this client, spec-
ify the same server twice.
This feature is available in Postfix 3.9 and later.

View File

@ -97,11 +97,9 @@ be possible to give each server in the list a different port
server_host = ldap.example.com:1444
.fi
NOTE: if "server_host" specifies one load balancer and no
alternative servers, specify the load balancer multiple
times in the "server_host" line. Without the duplicate info,
the Postfix LDAP client would not reconnect immediately to
the same load balancer after an LDAP server failure.
NOTE: this client will reconnect immediately after a single
failure, and will fail a lookup request after a second attempt
also fails.
With OpenLDAP, a (list of) LDAP URLs can be used to specify both
the hostname(s) and the port(s):

View File

@ -77,11 +77,11 @@ localhost over TCP you have to specify
hosts = 127.0.0.1
.fi
NOTE: if the \fBhosts\fR setting specifies one load balancer
and no alternative servers, specify the load balancer multiple
times. Without the duplicate info, the Postfix MySQL client
would not reconnect immediately to the same load balancer after
a request failure.
NOTE: if the \fBhosts\fR setting specifies one server, this client
assumes that the target is a load balancer and will reconnect
immediately after a single failure, instead of failing all
requests temporarily. With older versions of this client,
specify the same server twice.
.IP "\fBuser\fR"
.IP "\fBpassword\fR"
The user name and password to log into the mysql server.
@ -112,11 +112,11 @@ This feature is available in Postfix 3.9 and later.
The number of seconds that a database connection will be
skipped after an error.
NOTE: if the \fBhosts\fR setting specifies one load balancer
and no alternative servers, specify the load balancer multiple
times. Without the duplicate info, the Postfix MySQL client
would not reconnect immediately to the same load balancer after
a request failure.
NOTE: if the \fBhosts\fR setting specifies one server, this client
assumes that the target is a load balancer and will reconnect
immediately after a single failure, instead of failing all
requests temporarily. With older versions of this client,
specify the same server twice.
This feature is available in Postfix 3.9 and later.
.IP "\fBquery\fR"

View File

@ -81,11 +81,11 @@ NOTE: if the \fBhosts\fR setting specifies a PostgreSQL connection
URI, the Postfix PostgreSQL client will ignore the \fBdbname\fR,
\fBuser\fR, and \fBpassword\fR settings for that connection.
NOTE: if the \fBhosts\fR setting specifies one load balancer
and no alternative servers, specify the load balancer multiple
times. Without the duplicate info, the Postfix PostgreSQL client
would not reconnect immediately to the same load balancer after
a request failure.
NOTE: if the \fBhosts\fR setting specifies one server, this client
assumes that the target is a load balancer and will reconnect
immediately after a single failure, instead of failing all
requests temporarily. With older versions of this client,
specify the same server twice.
.IP "\fBuser\fR"
.IP "\fBpassword\fR"
The user name and password to log into the pgsql server.
@ -129,11 +129,11 @@ This feature is available in Postfix 3.9 and later.
The number of seconds that a database connection will be
skipped after an error.
NOTE: if the \fBhosts\fR setting specifies one load balancer
and no alternative servers, specify the load balancer multiple
times. Without the duplicate info, the Postfix PostgreSQL client
would not reconnect immediately to the same load balancer after
a request failure.
NOTE: if the \fBhosts\fR setting specifies one server, this client
assumes that the target is a load balancer and will reconnect
immediately after a single failure, instead of failing all
requests temporarily. With older versions of this client,
specify the same server twice.
This feature is available in Postfix 3.9 and later.
.IP "\fBquery\fR"

View File

@ -87,11 +87,9 @@
# server_host = ldap.example.com:1444
# .fi
#
# NOTE: if "server_host" specifies one load balancer and no
# alternative servers, specify the load balancer multiple
# times in the "server_host" line. Without the duplicate info,
# the Postfix LDAP client would not reconnect immediately to
# the same load balancer after an LDAP server failure.
# NOTE: this client will reconnect immediately after a single
# failure, and will fail a lookup request after a second attempt
# also fails.
#
# With OpenLDAP, a (list of) LDAP URLs can be used to specify both
# the hostname(s) and the port(s):

View File

@ -67,11 +67,11 @@
# hosts = 127.0.0.1
# .fi
#
# NOTE: if the \fBhosts\fR setting specifies one load balancer
# and no alternative servers, specify the load balancer multiple
# times. Without the duplicate info, the Postfix MySQL client
# would not reconnect immediately to the same load balancer after
# a request failure.
# NOTE: if the \fBhosts\fR setting specifies one server, this client
# assumes that the target is a load balancer and will reconnect
# immediately after a single failure, instead of failing all
# requests temporarily. With older versions of this client,
# specify the same server twice.
# .IP "\fBuser\fR"
# .IP "\fBpassword\fR"
# The user name and password to log into the mysql server.
@ -102,11 +102,11 @@
# The number of seconds that a database connection will be
# skipped after an error.
#
# NOTE: if the \fBhosts\fR setting specifies one load balancer
# and no alternative servers, specify the load balancer multiple
# times. Without the duplicate info, the Postfix MySQL client
# would not reconnect immediately to the same load balancer after
# a request failure.
# NOTE: if the \fBhosts\fR setting specifies one server, this client
# assumes that the target is a load balancer and will reconnect
# immediately after a single failure, instead of failing all
# requests temporarily. With older versions of this client,
# specify the same server twice.
#
# This feature is available in Postfix 3.9 and later.
# .IP "\fBquery\fR"

View File

@ -71,11 +71,11 @@
# URI, the Postfix PostgreSQL client will ignore the \fBdbname\fR,
# \fBuser\fR, and \fBpassword\fR settings for that connection.
#
# NOTE: if the \fBhosts\fR setting specifies one load balancer
# and no alternative servers, specify the load balancer multiple
# times. Without the duplicate info, the Postfix PostgreSQL client
# would not reconnect immediately to the same load balancer after
# a request failure.
# NOTE: if the \fBhosts\fR setting specifies one server, this client
# assumes that the target is a load balancer and will reconnect
# immediately after a single failure, instead of failing all
# requests temporarily. With older versions of this client,
# specify the same server twice.
# .IP "\fBuser\fR"
# .IP "\fBpassword\fR"
# The user name and password to log into the pgsql server.
@ -119,11 +119,11 @@
# The number of seconds that a database connection will be
# skipped after an error.
#
# NOTE: if the \fBhosts\fR setting specifies one load balancer
# and no alternative servers, specify the load balancer multiple
# times. Without the duplicate info, the Postfix PostgreSQL client
# would not reconnect immediately to the same load balancer after
# a request failure.
# NOTE: if the \fBhosts\fR setting specifies one server, this client
# assumes that the target is a load balancer and will reconnect
# immediately after a single failure, instead of failing all
# requests temporarily. With older versions of this client,
# specify the same server twice.
#
# This feature is available in Postfix 3.9 and later.
# .IP "\fBquery\fR"

View File

@ -757,6 +757,9 @@ static void mysql_parse_config(DICT_MYSQL *dict_mysql, const char *mysqlcf)
msg_info("%s: %s: no hostnames specified, defaulting to '%s'",
myname, mysqlcf, dict_mysql->hosts->argv[0]);
}
/* Don't blacklist the load balancer! */
if (dict_mysql->hosts->argc == 1)
argv_add(dict_mysql->hosts, dict_mysql->hosts->argv[0], (char *) 0);
myfree(hosts);
}

View File

@ -689,6 +689,9 @@ static void pgsql_parse_config(DICT_PGSQL *dict_pgsql, const char *pgsqlcf)
msg_info("%s: %s: no hostnames specified, defaulting to '%s'",
myname, pgsqlcf, dict_pgsql->hosts->argv[0]);
}
/* Don't blacklist the load balancer! */
if (dict_pgsql->hosts->argc == 1)
argv_add(dict_pgsql->hosts, dict_pgsql->hosts->argv[0], (char *) 0);
myfree(hosts);
}

View File

@ -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 "20250206"
#define MAIL_RELEASE_DATE "20250207"
#define MAIL_VERSION_NUMBER "3.10"
#ifdef SNAPSHOT