Bug with shared access to mailbox

Dave dovecot-e51 at deemzed.uk
Fri Jun 3 08:26:59 UTC 2016


On 03/06/2016 07:20, Aki Tuomi wrote:

> We tested with 2.2.24, and were unable to reproduce the error. Can you
> try again with 2.2.24?

Apologies for butting in, but I've been seeing exactly the same issue 
post upgrade to 2.2.24 (from 2.2.18):

[2016-06-02T10:38:28+0100] imap(xxxxx): Error: Corrupted index cache 
file /mnt/index/8cc/95
2952/.INBOX/dovecot.index.cache: Broken MIME parts for mail UID 13758 in 
mailbox INBOX: Cached MIME parts don't
match message during parsing: Cached header size mismatch 
(parts=41000000f7020000000000000a030000000000000508000
0000000003108000000000000030000004800000018030000000000005b000000000000005f00000000000000f100000000000000f500000
000000000040000004000000086040000000000002700000000000000290000000000000064010000000000006b010000000000004400000
033060000000000001e000000000000002000000000000000860400000000000097040000000000001100000001000000410000005106000
000000000850400000000000095040000000000000000000000000000000000000000000000000000)

etc.

At first I assumed it was better at picking up corrupted indexes and 
would reduce in severity over time. However, I've also seen that 
attempting to force-resync or remove and rebuild indexes doesn't help - 
it reoccurs on the same mailboxes.

Unfortunately I'm unable to reveal mails from affected mailboxes, so I'm 
not sure how much help this is beyond a "me too".

doveconf (dovecot behind directors)

# doveconf -n

# 2.2.24 (a82c823): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.14 (099a97c)
# OS: Linux 2.6.32-573.26.1.el6.x86_64 x86_64 CentOS release 6.7 (Final)
auth_anonymous_username =
auth_failure_delay = 0
auth_master_user_separator = *
auth_username_chars = 
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.-_
auth_worker_max_count = 64
base_dir = /var/run/dovecot/
default_client_limit = 5120
default_process_limit = 128
default_vsz_limit = 64 M
deliver_log_format = msgid=%m from=<%e> (%f) to=<%{to_envelope}>: %$
disable_plaintext_auth = no
first_valid_gid = 2000
first_valid_uid = 2000
lda_mailbox_autocreate = yes
lda_mailbox_autosubscribe = yes
lda_original_recipient_header = X-Original-To
listen = 192.168.0.214
lmtp_hdr_delivery_address = none
lmtp_rcpt_check_quota = yes
log_path = /var/log/dovecot/dovecot.log
log_timestamp = "[%Y-%m-%dT%H:%M:%S%z] "
login_greeting = Mail Server Ready
login_log_format_elements = pid=%e user=<%u> ip=%r
login_trusted_networks = 192.168.0.223 192.168.0.224 192.168.0.225 
192.168.0.226 192.168.0.227 192.168.0.228
mail_access_groups = doveuser
mail_fsync = always
mail_home = /mnt/mail/%3Mu/%u
mail_location = 
maildir:~:INDEX=/mnt/index/%3Mu/%i:CONTROL=/mnt/control/%3Mu/%u
mail_plugins = " stats"
mailbox_idle_check_interval = 2 mins
mailbox_list_index = yes
maildir_very_dirty_syncs = yes
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 mailbox 
date index ihave duplicate mime foreverypart extracttext
mmap_disable = yes
passdb {
    args = /etc/dovecot/passwd.master
    driver = passwd-file
    master = yes
    pass = yes
    result_failure = return-fail
    result_internalfail = return-fail
}
passdb {
    args = /etc/dovecot/sql.d/user.ext
    driver = sql
}
plugin {
    sieve = file:~/sieve;active=~/sieve/.active.sieve
    sieve_extensions = -environment
    sieve_max_actions = 32
    sieve_max_redirects = 4
    sieve_max_script_size = 1M
    sieve_quota_max_scripts = 16
    sieve_quota_max_storage = 2M
    sieve_redirect_envelope_from = sender
    sieve_user_log = /dev/null
    stats_refresh = 30 secs
    stats_track_cmds = no
}
protocols = lmtp imap pop3 sieve
recipient_delimiter =
service auth-worker {
    user = $default_internal_user
    vsz_limit = 128 M
}
service auth {
    client_limit = 7664
    vsz_limit = 128 M
}
service imap-login {
    inet_listener imap {
      port = 10143
    }
    service_count = 0
}
service imap {
    process_limit = 5120
    process_min_avail = 24
    vsz_limit = 512 M
}
service lmtp {
    executable = lmtp -L
    inet_listener lmtp {
      port = 10024
    }
    process_limit = 128
    process_min_avail = 12
    vsz_limit = 512 M
}
service managesieve-login {
    inet_listener sieve {
      port = 14190
    }
    service_count = 0
    vsz_limit = 512 M
}
service managesieve {
    process_limit = 128
}
service pop3-login {
    inet_listener pop3 {
      port = 10110
    }
    service_count = 0
}
service pop3 {
    process_limit = 2048
    process_min_avail = 24
    vsz_limit = 512 M
}
service stats {
    fifo_listener stats-mail {
      group = doveuser
      mode = 0660
    }
    vsz_limit = 256 M
}
ssl = no
stats_command_min_time = 0
stats_ip_min_time = 2 mins
stats_memory_limit = 64 M
stats_session_min_time = 2 mins
stats_user_min_time = 2 mins
userdb {
    args = /etc/dovecot/sql.d/user.ext
    driver = sql
}
verbose_proctitle = yes
protocol lmtp {
    auth_username_chars =
    auth_username_format = %Ln
    log_path = /var/log/dovecot/lmtp.log
    mail_plugins = " stats sieve"
}
protocol imap {
    imap_client_workarounds = delay-newmail
    imap_id_log = name version os os-version
    imap_id_send =
    imap_idle_notify_interval = 10 mins
    imap_logout_format = bytes=%i/%o
    imap_max_line_length = 64 k
    mail_max_userip_connections = 16
    mail_plugins = " stats imap_stats"
}
protocol sieve {
    mail_max_userip_connections = 16
    managesieve_logout_format = bytes=%i/%o
    managesieve_max_compile_errors = 5
}
protocol pop3 {
    mail_max_userip_connections = 16
    pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
    pop3_enable_last = no
    pop3_fast_size_lookups = no
    pop3_lock_session = yes
    pop3_logout_format = bytes=%i/%o, top=%t/%p, retr=%r/%b, del=%d/%m, 
size=%s
    pop3_no_flag_updates = no
    pop3_reuse_xuidl = no
    pop3_save_uidl = no
    pop3_uidl_format = %08Xv%08Xu
}

-- 
Dave


More information about the dovecot mailing list