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