Howard Chu wrote:
Pierangelo Masarati wrote:
Aaron Richton wrote:
If you're using 2.3.33, SO_KEEPALIVE should be set (see the ITS and CHANGES). You can look at your FreeBSD documentation to determine how to tune the kernel TCP parameters thereof.
AFAIR, SO_KEEPALIVE isn't the solution as on most systems it defaults to a couple of hours, and manuals usually suggest to leave it untouched to avoid instabilities (no more details at hand right now).
In a custom development where proxies are involved, we designed a background thread that periodically performs a simple operation on all proxy cached connections and, in case of failure, trashes the cached connection. Maybe something similar could be set up for syncrepl as well, since in principle multiplexed operations should be possible on the connection created for sync replication.
p.
Interesting idea. I suppose a query on the rootDSE would suffice.
In the proxy case, we typically query the suffix of the proxied tree with base scope and filter "(|)" where supported, or "(!(objectClass=*))" otherwise, to minimize the activity on the remote server. In case of LDAP_SERVER_DOWN (or LDAP_TIMEOUT, in some cases) the connection is tainted.
p.
Ing. Pierangelo Masarati OpenLDAP Core Team
SysNet s.n.c. Via Dossi, 8 - 27100 Pavia - ITALIA http://www.sys-net.it ------------------------------------------ Office: +39.02.23998309 Mobile: +39.333.4963172 Email: pierangelo.masarati@sys-net.it ------------------------------------------