Hi,
I see a lot of crashes in my syslog lately. Specifically a sequence of
errors exactly like this (only the timestamp differs).
Nov 10 21:29:53 khitomer dovecot: imap-login: Login: user=<user@hostname>, method=PLAIN, rip=XXXX, lip=YYYY, mpid=ZZZZ, TLS, session=<TTTT>
Nov 10 21:29:53 khitomer dovecot: imap(user@hostname): Panic: file mail-storage.c: line 2222 (mailbox_copy): assertion failed: (!ctx->unfinished)
Nov 10 21:29:53 khitomer dovecot: imap(user@hostname): Fatal: master: service(imap): child 35108 killed with signal 6 (core not dumped)
I have the mail storage on ZFS, one separate filesystem per user and
another for the lucene indexes. I.e. these are separate ZFS filesystems
(not pools):
/var/mail/vhosts/%d/%n
/var/mail/vhosts/%d/%n/lucene-indexes
Any idea what could be going wrong?
partial config (without LDA, SSL and auth portions):
2.2.15: /usr/local/etc/dovecot/dovecot.conf
OS: FreeBSD 10.0-RELEASE-p12 amd64
mail_gid = mail
mail_location = maildir:~/Maildir/
mail_plugins = acl mailbox_alias quota virtual
mail_privileged_group = mail
mail_uid = vmail
namespace {
list = yes
location = maildir:/var/mail/public:INDEXPVT=~/Maildir/public
prefix = Public.
separator = .
subscriptions = no
type = public
}
namespace {
list = children
location = maildir:%%h/Maildir/:INDEX=~/Maildir/shared/%%n
prefix = shared.%%n.
separator = .
subscriptions = no
type = shared
}
namespace {
location = virtual:~/Maildir/virtual
prefix = virtual.
separator = .
type = private
}
namespace inbox {
inbox = yes
location =
mailbox Drafts {
special_use = \Drafts
}
mailbox Junk {
auto = create
special_use = \Junk
}
mailbox Sent {
auto = create
special_use = \Sent
}
mailbox Trash {
auto = create
special_use = \Trash
}
mailbox virtual.All {
special_use = \All
}
prefix =
separator = .
}
plugin {
acl = vfile:/usr/local/etc/dovecot/global-acls:cache_secs=10
acl_anyone = allow
acl_shared_dict = file:/var/mail/vhosts/%d/shared-mailboxes.db
antispam_backend = mailtrain
antispam_mail_notspam = -g
antispam_mail_sendmail = /usr/bin/nice
antispam_mail_sendmail_args = /usr/local/bin/python2;-W;ignore;/usr/local/bin/sb_filter.py;-d;%h/.hammiedb;-f
antispam_mail_spam = -s
antispam_spam = SPAM;Spam;Junk
antispam_trash = Trash
antispam_unsure = Filtered-Spam;Possible-Spam
fetchmail_pidfile = %h/.fetchmail.pid
fts = lucene
fts_autoindex = yes
fts_autoindex_max_recent_msgs = 30
fts_decoder = decode2text
fts_index_timeout = 60
fts_lucene = whitespace_chars=@. mime_parts
mailbox_alias_new = Sent Messages
mailbox_alias_new2 = Sent Items
mailbox_alias_old = Sent
mailbox_alias_old2 = Sent
quota = maildir:User quota
quota_grace = 10%%
quota_rule = *:storage=1G
quota_rule2 = Trash:storage=+100M
quota_rule3 = Junk:ignore
quota_rule4 = Possible-Spam:ignore
quota_rule5 = Filtered-Spam:ignore
recipient_delimiter = +
}
postmaster_address = postmaster@$hostname
protocols = imap lmtp sieve
quota_full_tempfail = yes
service auth-worker {
user = $default_internal_user
}
service imap-login {
inet_listener imaps {
port = 993
ssl = yes
}
}
service imap {
drop_priv_before_exec = yes
}
userdb {
args = username_format=%u /usr/local/etc/dovecot/users
default_fields = home=/var/mail/vhosts/%d/%n
driver = passwd-file
}
protocol imap {
mail_max_userip_connections = 25
mail_plugins = acl mailbox_alias quota virtual imap_acl zlib imap_zlib imap_quota expire fetchmail_wakeup antispam
}
--
Met vriendelijke groet,
With kind regards,
Giel van Schijndel
"It would seem that perfection is attained not when no more can be
added, but when no more can be removed."
-- Antoine de Saint Exupéry