[Dovecot] Internal Error form delivery from LDAP lookup.

Timo Sirainen tss at iki.fi
Mon Dec 6 09:44:23 EET 2010


On 6.12.2010, at 7.32, Jorgen Lundman wrote:

> Dec 06 08:46:28 deliver(rbc-004 at example.com): Error: userdb lookup(rbc-004 at example.com) failed: Internal failure

auth process should log an error about this too?

> Since dovecot_destination_recipient_limit=1, I believe 'deliver' is only ever called with just one recipient for "-d", and 'deliver' probably-does-not (?) query LDAP for any of the other "To:" addresses in the message body. Is that the case?

deliver does all lookups via auth process. And yes, only one lookup is done for the username given with -d.

> Secondary, the dovecot-ldap.conf for dovecot-auth has:
> 
> hosts = 127.0.0.1 172.20.12.33 172.20.12.23 172.20.12.113
> 
> So even though localhost's slapd was busy at the time, the other three hosts were definitely not. Is LDAP fail-over ... failing... in this case?

This is all handled by OpenLDAP code internally. I've no idea how it works.

> How many concurrent queries does dovecot-auth perform? Any way to tweak this value?

src/auth/db-ldap.h :

/* Maximum number of pending requests before delaying new requests. */
#define DB_LDAP_MAX_PENDING_REQUESTS 128

That's probably too large, because for v2.0 I've dropped it to 8:
http://hg.dovecot.org/dovecot-2.0/rev/3cda9f2f48bd


More information about the dovecot mailing list