This has been fixed on later release. You are using very old version.
An email came to several users but one user didn't receive it and we got 'Mail delivery failed' message.
As I see from the log below, there were broken index file.
Then dovecot repaired that index and we got the error:
Panic: file mail-index-sync-update.c: line 1013 (mail_index_sync_map):
assertion failed: (map->hdr.indexid == index->indexid ||
map->hdr.indexid == 0)
It was one-time error and it has not reappeared yet.
At the moment the user receives emails successfully (in .Queue.A_Sup.group_05 as well).
It is supposed that Dovecot had to repair index file and put the email in mnt/mail//user05/Maildir/.Queue.A_Sup.group_05/ directory but it didn't.
Is there something wrong with Dovecot?
Thanks.
---
Operating system: Linux Centos 7 3.10.0-862.3.2.el7.x86_64 #1 SMP Mon May 21 23:36:36 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
rpm -qa |grep dovecot
dovecot-pigeonhole-2.2.10-8.el7.x86_64
dovecot-2.2.10-8.el7.x86_64
dovecot.log output
---------------------
Aug 06 23:19:24 lda: Debug: Loading modules from directory: /usr/lib64/dovecot
Aug 06 23:19:24 lda: Debug: Module loaded: /usr/lib64/dovecot/lib90_sieve_plugin.so
Aug 06 23:19:24 lda(user05): Debug: Effective uid=10492, gid=10001, home=/mnt/mail/user05
Aug 06 23:19:24 lda(user05): Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:/mnt/mail//user05/Maildir:INBOX=/mnt/mail//user05/Maildir
Aug 06 23:19:24 lda(user05): Debug: maildir++: root=/mnt/mail//user05/Maildir, index=, indexpvt=, control=, inbox=/mnt/mail//user05/Maildir, alt=
Aug 06 23:19:24 lda(user05): Debug: userdb lookup skipped, username taken from USER environment
Aug 06 23:19:24 lda(user05): Debug: none: root=, index=, indexpvt=, control=, inbox=, alt=
Aug 06 23:19:24 lda(user05): Debug: Destination address:
user05@imap.po.com (source: user@hostname)
Aug 06 23:19:24 lda(user05): Debug: sieve: Pigeonhole version 0.4.2 initializing
Aug 06 23:19:24 lda(user05): Debug: sieve: include: sieve_global_dir is not set; it is currently not possible to include `:global' scripts.
Aug 06 23:19:24 lda(user05): Debug: sieve: executed before user's personal Sieve script(1): /etc/dovecot/sieve/before/priority_colors.sieve
Aug 06 23:19:24 lda(user05): Debug: sieve: using the following location for user's Sieve script: /mnt/mail//user05/.dovecot.sieve;name=main script
Aug 06 23:19:24 lda(user05): Debug: sieve: executed after user's Sieve script(3): /etc/dovecot/sieve/after/spam.sieve
Aug 06 23:19:24 lda(user05): Debug: sieve: opening script 1 of 3 from /etc/dovecot/sieve/before/priority_colors.sieve
Aug 06 23:19:24 lda(user05): Debug: sieve: loading script /etc/dovecot/sieve/before/priority_colors.sieve
Aug 06 23:19:24 lda(user05): Debug: sieve: script binary /etc/dovecot/sieve/before/priority_colors.svbin successfully loaded
Aug 06 23:19:24 lda(user05): Debug: sieve: binary save: not saving binary /etc/dovecot/sieve/before/priority_colors.svbin, because it is already stored
Aug 06 23:19:24 lda(user05): Debug: sieve: executing script from /etc/dovecot/sieve/before/priority_colors.svbin
Aug 06 23:19:24 lda(user05): Debug: sieve: opening script 2 of 3 from /mnt/mail//user05/.dovecot.sieve;name=main script
Aug 06 23:19:24 lda(user05): Debug: sieve: loading script /mnt/mail//user05/.dovecot.sieve;name=main script
Aug 06 23:19:24 lda(user05): Debug: sieve: script binary /mnt/mail//user05/.dovecot.svbin successfully loaded
Aug 06 23:19:24 lda(user05): Debug: sieve: binary save: not saving binary /mnt/mail//user05/.dovecot.svbin, because it is already stored
Aug 06 23:19:24 lda(user05): Debug: sieve: executing script from /mnt/mail//user05/.dovecot.svbin
Aug 06 23:19:24 lda(user05): Error: Index file /mnt/mail//user05/Maildir/.Queue.A_Sup.group_05/dovecot.index: indexid changed: 1533501509 -> 1464071305
Aug 06 23:19:24 lda(user05): Error: Corrupted transaction log file /mnt/mail//user05/Maildir/.Queue.A_Sup.group_05/dovecot.index.log seq 3: indexid changed: 1533501509 -> 1464071305 (sync_offset=168)
Aug 06 23:19:24 lda(user05): Error: Transaction log file /mnt/mail//user05/Maildir/.Queue.A_Sup.group_05/dovecot.index.log: marked corrupted
Aug 06 23:19:24 lda: Debug: Loading modules from directory: /usr/lib64/dovecot
Aug 06 23:19:24 lda(user05): Error: Corrupted index file /mnt/mail//user05/Maildir/.Queue.A_Sup.group_05/dovecot.index: messages_count too large (2915 > 85)
Aug 06 23:19:24 lda(user05): Warning: fscking index file /mnt/mail//user05/Maildir/.Queue.A_Sup.group_05/dovecot.index
Aug 06 23:19:24 lda(user05): Error: Corrupted index file /mnt/mail//user05/Maildir/.Queue.A_Sup.group_05/dovecot.index: messages_count too large (2915 > 85)
Aug 06 23:19:24 lda(user05): Warning: fscking index file /mnt/mail//user05/Maildir/.Queue.A_Sup.group_05/dovecot.index
Aug 06 23:19:24 lda(user05): Error: Fixed index file /mnt/mail//user05/Maildir/.Queue.A_Sup.group_05/dovecot.index: log_file_seq 670 -> 2
Aug 06 23:19:24 lda(user05): Error: Fixed index file /mnt/mail//user05/Maildir/.Queue.A_Sup.group_05/dovecot.index: messages_count 2915 -> 85
Aug 06 23:19:24 lda(user05): Panic: file mail-index-sync-update.c: line 1013 (mail_index_sync_map): assertion failed: (map->hdr.indexid == index->indexid || map->hdr.indexid == 0)
Aug 06 23:19:24 lda(user05): Error: Raw backtrace: /usr/lib64/dovecot/libdovecot.so.0(+0x6a06e) [0x7f1ada8a106e] -> /usr/lib64/dovecot/libdovecot.so.0(default_fatal_handler+0x2a) [0x7f1ada8a10da] -> /usr/lib64/dovecot/libdovecot.so.0(i_fatal+0) [0x7f1ada85952c] -> /usr/lib64/dovecot/libdovecot-storage.so.0(mail_index_sync_map+0x651) [0x7f1adabda2c1] -> /usr/lib64/dovecot/libdovecot-storage.so.0(mail_index_map+0x3e7) [0x7f1adabcab77] -> /usr/lib64/dovecot/libdovecot-storage.so.0(+0xb937d) [0x7f1adabc637d] -> /usr/lib64/dovecot/libdovecot-storage.so.0(+0xb9990) [0x7f1adabc6990] -> /usr/lib64/dovecot/libdovecot-storage.so.0(mail_index_open+0x8c) [0x7f1adabc6a7c] -> /usr/lib64/dovecot/libdovecot-storage.so.0(index_storage_mailbox_open+0x87) [0x7f1adabb79c7] -> /usr/lib64/dovecot/libdovecot-storage.so.0(+0x4d882) [0x7f1adab5a882] -> /usr/lib64/dovecot/libdovecot-storage.so.0(+0x4d963) [0x7f1adab5a963] -> /usr/lib64/dovecot/libdovecot-storage.so.0(+0x802b4) [0x7f1adab8d2b4] -> /usr/lib64/dovecot/libdovecot-storage.so.0(mailbox_open+0x20) [0x7f1adab8d430] -> /usr/lib64/dovecot/libdovecot-lda.so.0(mail_deliver_save_open+0xad) [0x7f1adae3240d] -> /usr/lib64/dovecot/libdovecot-sieve.so.0(+0x3f0a2) [0x7f1ad9e130a2] -> /usr/lib64/dovecot/libdovecot-sieve.so.0(sieve_result_execute+0xc5) [0x7f1ad9e0b0f5] -> /usr/lib64/dovecot/libdovecot-sieve.so.0(sieve_multiscript_run+0x119) [0x7f1ad9e1b3c9] -> /usr/lib64/dovecot/lib90_sieve_plugin.so(+0x2e97) [0x7f1ada062e97] -> /usr/lib64/dovecot/libdovecot-lda.so.0(mail_deliver+0x4a) [0x7f1adae32b3a] -> /usr/libexec/dovecot/deliver(main+0x3b5) [0x556390a1e885] -> /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f1ada48c445] -> /usr/libexec/dovecot/deliver(+0x318c) [0x556390a1f18c]
dovecot -n output:
===========
# 2.2.10: /etc/dovecot/dovecot.conf
# OS: Linux 3.10.0-862.3.2.el7.x86_64 x86_64 CentOS Linux release 7.5.1804 (Core) fuse.encfs
auth_verbose = yes
first_valid_uid = 1000
lda_mailbox_autocreate = yes
log_path = /var/log/dovecot.log
mail_debug = yes
mail_home = /mnt/mail/%d/%n
mail_location = maildir:/mnt/mail/%d/%n/Maildir:INBOX=/mnt/mail/%d/%n/Maildir
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox dat
e ihave
mbox_write_locks = fcntl
namespace inbox {
inbox = yes
location =
mailbox Drafts {
special_use = \Drafts
}
mailbox Junk {
special_use = \Junk
}
mailbox Sent {
special_use = \Sent
}
mailbox "Sent Messages" {
special_use = \Sent
}
mailbox Trash {
special_use = \Trash
}
prefix =
}
passdb {
driver = pam
}
plugin {
setting_name = value sieve
sieve = /mnt/mail/%d/%n/.dovecot.sieve
sieve_after = /etc/dovecot/sieve/after/
sieve_before = /etc/dovecot/sieve/before/
sieve_dir = /mnt/mail/%d/%n/sieve
}
protocols = imap pop3 lmtp sieve
service imap-login {
process_limit = 2000
}
service managesieve-login {
inet_listener sieve {
port = 4190
}
process_min_avail = 0
service_count = 1
vsz_limit = 64 M
}
service managesieve {
process_limit = 1024
}
ssl = required
ssl_ca = </etc/CERT/SSL_CA_Bundle.pem
ssl_cert = </etc/CERT/po.com.crt
ssl_key = </etc/CERT/po.com.key
ssl_protocols = !SSLv2 !SSLv3
userdb {
driver = passwd
}
protocol lda {
mail_plugins = " sieve"
}
protocol imap {
mail_max_userip_connections = 20
}
================