Hello Everyone, First wanted to say thanks for any help in advance. I have a clustered mail system each running on centos 5.2. I have a test box that I am running the newest version on dovecot on and I am getting some random authnication failed errors. Here is the error below: Nov 04 17:31:22 auth(default): Error: worker-server(xxx at xxxx.com): Aborted: Lookup timed out Nov 04 17:31:23 auth(default): Info: client out: FAIL 2 user=xxx at xxxx.com temp The thing is, the errors only show when the user is attempting to send a message. Here is my dovecot -n # 1.2.5: /etc/dovecot.conf # OS: Linux 2.6.18-92.el5 x86_64 CentOS release 5.2 (Final) nfs log_path: /var/log/dovecot login_dir: /var/run/dovecot/login login_executable(default): /usr/libexec/dovecot/imap-login login_executable(imap): /usr/libexec/dovecot/imap-login login_executable(pop3): /usr/libexec/dovecot/pop3-login login_process_size: 512 login_processes_count: 500 login_max_processes_count: 5000 login_max_connections: 1000 max_mail_processes: 5000 mail_max_userip_connections: 2000 verbose_proctitle: yes first_valid_uid: 5000 first_valid_gid: 5000 mail_location: maildir:/export/monster/mail/%d/%n:INDEX=/export/ monster/mail/%d/%n mail_debug: yes mmap_disable: yes mail_nfs_storage: yes mail_nfs_index: yes maildir_stat_dirs: yes mbox_read_locks: dotlock mbox_write_locks: dotlock mail_executable(default): /usr/libexec/dovecot/imap mail_executable(imap): /usr/libexec/dovecot/imap mail_executable(pop3): /usr/libexec/dovecot/pop3 mail_process_size: 512 mail_plugins(default): mail_log mail_plugins(imap): mail_log mail_plugins(pop3): mail_plugin_dir(default): /usr/lib64/dovecot/imap mail_plugin_dir(imap): /usr/lib64/dovecot/imap mail_plugin_dir(pop3): /usr/lib64/dovecot/pop3 pop3_save_uidl(default): no pop3_save_uidl(imap): no pop3_save_uidl(pop3): yes pop3_uidl_format(default): %08Xu%08Xv pop3_uidl_format(imap): %08Xu%08Xv pop3_uidl_format(pop3): %08Xv%08Xu lda: postmaster_address: xxx at xxxx.net mail_plugins: sieve log_path: /var/log/dovecot-deliver.log info_log_path: /var/log/dovecot-deliver.log auth_socket_path: /var/run/dovecot/auth-master auth default: mechanisms: plain login failure_delay: 1 verbose: yes debug: yes debug_passwords: yes worker_max_count: 500 passdb: driver: sql args: /etc/dovecot/dovecot-sql.conf userdb: driver: sql args: /etc/dovecot/dovecot-sql.conf socket: type: listen client: path: /var/spool/postfix/auth mode: 432 user: postfix group: postfix master: path: /var/run/dovecot/auth-master mode: 384 user: mailowner group: mailowner plugin: mail_log_events: delete undelete expunge copy mailbox_delete mailbox_rename Also here is my dovecot-sql.conf user_query = SELECT '/export/monster/mail/%d/%n' as home, 'maildir:/ export/monster/mail/%d/%n:INDEX=/export/monster/mail/%d/%n' as mail, 5000 AS uid, 5000 AS gid, concat('*:bytes=', quota) AS quota_rule FROM mailbox WHERE username ='%u' AND active ='1' password_query = SELECT MB.password FROM (mailbox as MB) LEFT JOIN domain as D ON (D.id=MB.domain_id AND D.active='1') WHERE MB.username = '%u' AND MB.active = '1' AND (D.id IS NOT NULL OR (MB.domain_id=0 and MB.name='SASL')) I have disabled user prefetch because for some reason, I get this error when it is active: Nov 04 17:05:25 auth(default): Info: prefetch (xxx at xxxx.net,xxx.xxx.xxx.xxx): passdb didn't return userdb entries, trying the next userdb Thanks for any help you can offer. Jeffrey Nikoletich
On Thu, 2009-11-05 at 09:20 -0800, Jeffrey Nikoletich wrote:> Nov 04 17:31:22 auth(default): Error: worker-server(xxx at xxxx.com): > Aborted: Lookup timed outThis means it took over a minute to execute the SQL query.> The thing is, the errors only show when the user is attempting to send > a message.Is your SMTP server also authenticating through Dovecot? That's the only reason I can think of.> I have disabled user prefetch because for some reason, I get this > error when it is active: > > Nov 04 17:05:25 auth(default): Info: prefetch > (xxx at xxxx.net,xxx.xxx.xxx.xxx): passdb didn't return userdb entries, > trying the next userdbRight, because you didn't any userdb_* fields in password_query. If you want to use prefetch, you should make your password_query return all the same fields as user_query, except with userdb_ prefix. That's anyway not related to why the lookup would be taking that long. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 197 bytes Desc: This is a digitally signed message part URL: <http://dovecot.org/pipermail/dovecot/attachments/20091105/a40f63a4/attachment-0002.bin>
On Nov 5, 2009, at 11:47 AM, Timo Sirainen wrote:> On Thu, 2009-11-05 at 09:20 -0800, Jeffrey Nikoletich wrote: >> Nov 04 17:31:22 auth(default): Error: worker-server(xxx at xxxx.com): >> Aborted: Lookup timed out > > This means it took over a minute to execute the SQL query.I thought the same, but it times out the second the user hits send.> >> The thing is, the errors only show when the user is attempting to >> send >> a message. > > Is your SMTP server also authenticating through Dovecot? That's the > only > reason I can think of.Yes, I have postfix doing that.> >> I have disabled user prefetch because for some reason, I get this >> error when it is active: >> >> Nov 04 17:05:25 auth(default): Info: prefetch >> (xxx at xxxx.net,xxx.xxx.xxx.xxx): passdb didn't return userdb entries, >> trying the next userdb > > Right, because you didn't any userdb_* fields in password_query. If > you > want to use prefetch, you should make your password_query return all > the > same fields as user_query, except with userdb_ prefix. That's anyway > not > related to why the lookup would be taking that long.Ok, Thanks for the note.