Jerrale G
2010-Aug-11 08:19 UTC
[Dovecot] Fatal: dict_driver_register(mysql): Already registered
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
Charles Marcus
2010-Aug-11 11:27 UTC
[Dovecot] Fatal: dict_driver_register(mysql): Already registered
Jerrale G wrote:> 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.Correction - it is in release candidate stage, with the final version slated for release within a week or two. If you are still in testing/eval stage (sounds like it), I would recommend going with 2.0 unless there is a compelling reason not to... -- Best regards, Charles
Possibly Parallel Threads
- v2.0.rc5 released
- v2.0.rc5 released
- dovecot.conf: mechanisms = plain login cram-md5 | Windows Live Mail: CRAM-MD5 authentication failed. This could (NOT) be due to a lack of memory on your system
- Logged out format in log
- dovecot: auth: Fatal: sql_driver_register(mysql): Already registered