[Dovecot] Fatal: dict_driver_register(mysql): Already registered
Jerrale G
jerrale at sheltoncomputers.com
Wed Aug 11 11:19:16 EEST 2010
Warning: Corrected permissions for login directory /var/run/dovecot/login
ls -l /var/run/dovecot
srw-rw-rw- 1 root root 0 Aug 10 15:02 auth-master
srw------- 1 mail mail 0 Aug 10 15:02 auth-worker.2774
srwxrwxrwx 1 root root 0 Aug 10 15:02 dict-server
lrwxrwxrwx 1 root root 17 Aug 10 15:02 dovecot.conf ->
/etc/dovecot.conf
drwxr-x--- 2 root dovecot 4096 Aug 10 15:02 login
-rw------- 1 root root 5 Aug 10 15:02 master.pid
Everything works, eventually. All mail will sooner or later get
delivered, using dovecot LDA from postfix, but these errors rampage the
log several times. I recently added managesieve, expires, and finished
the quota which I thought was achived by simply having quota_rule as a
result of mysql.
Aug 10 15:07:57 server1 dovecot: IMAP(someone at sheltoncomputers.com):
read(/var/run/dovecot/dict-server) failed: Timeout after 30 seconds
Aug 10 15:07:57 server1 dovecot: dict: Fatal:
dict_driver_register(mysql): Already registered
Aug 10 15:08:09 server1 last message repeated 4428 times
On another note, Thunderbird is starting to get on my nerves, sending
this message before I was finished.
Here is the relevant config:
dovecot-mysql query:
user_query = SELECT CONCAT('/home/mail/', mailboxes.domain, '/',
mailboxes.username, '/') AS home, CONCAT('/home/mail/',
mailboxes.domain, '/', mailboxes.username, '/sieve/',
mailboxes.username, '.sieve') as sieve, CONCAT('/home/mail/',
mailboxes.domain, '/', mailboxes.username, '/sieve/') as sieve_dir,
CONCAT('/home/mail/', mailboxes.domain, '/', mailboxes.username,
'/mail/') AS maildir, uid AS uid, gid AS gid, CONCAT('maildir:storage=',
ROUND(mailboxes.quota/1200), 'M') AS quota_rule, 'Trash:ignore' AS
quota_rule2 FROM mail.mailboxes WHERE username = '%n' AND domain = '%d'
AND active = '1'
dovecot.conf:
protocol managesieve {
listen = localhost:2001
managesieve_implementation_string = dovecot
managesieve_logout_format = bytes ( in=%i : out=%o )
mail_executable = /usr/libexec/dovecot/managesieve
login_executable = /usr/libexec/dovecot/managesieve-login
}
auth_debug = no
auth default {
mechanisms = plain login
passdb sql {
args = /etc/dovecot/dovecot-mysql.conf
# scheme = cram-md5
}
userdb sql {
args = /etc/dovecot/dovecot-mysql.conf
}
user = mail
socket listen {
client {
path = /var/spool/postfix/private/auth
user = postfix
group = postfix
mode = 0660
}
master {
path = /var/run/dovecot/auth-master
mode = 0666
}
}
}
dict {
# # NOTE: dict process currently runs as root, so this file will be
owned as root.
expire = mysql:/etc/dovecot/dict-expire.conf
quotadict = mysql:/etc/dovecot/dict-quota.conf
}
plugin {
quota = dict:user::proxy::quotadict
expire = Trash 7 Trash/* 7 Spam 30
expire_dict = proxy::expire
expire_altmove = * 2555
sieve_global_path = /home/mail/sieve/global.sieve
sieve_global_dir = /home/mail/sieve
sieve_dir=/home/mail/%d/%n/sieve
}
As said, everything works, eventually, but mail delivery is delayed a
lot. With The dict {} and expire-related parts commented out,
operation has no errors or delays; performance is exceptional with
maildir, quota, sieve, and managesieve. I don't think managesieve would
patch any part of the dictionary code as it only has to do with another
service process, not a plugin; if the patching was to cause problems
with other services, for the service definition coding, the other
services would have a problem, correct?
The expires dictionary mysql table was being correctly used, with one
day of use, as there are 10000 records; I'm going to have to revise the
mysql indexes for performance in case I am able to fix the dictionary
problem. We like the 1.2.13 version of dovecot, as far as security, and
wonder how I can find a correct defintion scripting for the dict {},
from a previous version, and merge. We are use to windows compilations.
I am skeptical to go to dovecot 2.0 as our services are in production
and 2.0 is beta.
I have recompiled several times with fresh sources of dovecot 1.2.13,
managesieve 0.11.11 patchl, and sieve 1.0.17 as directed by the Dovecot
Wiki.
Jerrale G,
SCA
More information about the dovecot
mailing list