This happened after upgrading to 2.2.16. Running on Debian wheezy amd64.
We never had such a crash on this server before. However, this too was a single incident.
All accounts use Maildir.


Mar 21 09:32:02 imap1 dovecot: imap(----@---.com): Error: Log synchronization error at seq=0,offset=0 for /stor/mail/domains/----/----/Maildir/dovecot.index: Append with UID 6684, but next_uid = 6685 Mar 21 09:32:02 imap1 dovecot: imap(----@---.com): Error: /stor/mail/domains/----/----/Maildir/dovecot.index view syncing failed to apply changes Mar 21 09:32:02 imap1 dovecot: imap(----@---.com): Panic: file index-sync.c: line 265 (index_mailbox_sync_next_expunge): assertion failed: (range->seq2 <= ctx->messages_count) Mar 21 09:32:02 imap1 dovecot: imap(----@---.com): Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(+0x7b57f) [0x7f34cd27c57f] -> /usr/lib/dovecot/libdovecot.so.0(+0x7b5de) [0x7f34cd27c5de] -> /usr/lib/dovecot/libdovecot.so.0(i_fatal+0) [0x7f34cd22b0d5] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0xb5391) [0x7f34cd5a6391] -> dovecot/imap [----@---.com xx.xx.xx.xx UID FETCH - 2373 bytes waiting](imap_sync_more+0xce) [0x7f34cda5ad2e] -> dovecot/imap [----@---.com xx.xx.xx.xx UID FETCH - 2373 bytes waiting](+0x22344) [0x7f34cda5b344] -> dovecot/imap [----@---.com xx.xx.xx.xx UID FETCH - 2373 bytes waiting](cmd_sync_delayed+0x1bf) [0x7f34cda5b67f] -> dovecot/imap [----@---.com xx.xx.xx.xx UID FETCH - 2373 bytes waiting](client_output+0xe0) [0x7f34cda52910] -> /usr/lib/dovecot/libdovecot.so.0(+0x98a85) [0x7f34cd299a85] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x5b) [0x7f34cd28e80b] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0xbb) [0x7f34cd28f88b] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x9) [0x7f34cd28e899] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x38) [0x7f34cd28e918] -> /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x13) [0x7f34cd2307d3] -> dovecot/imap [----@---.com xx.xx.xx.xx UID FETCH - 2373 bytes waiting](main+0x2b7) [0x7f34cda46997] -> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xfd) [0x7f34cce94ead] -> dovecot/imap [----@---.com xx.xx.xx.xx UID FETCH - 2373 bytes waiting](+0xdb09) [0x7f34cda46b09] Mar 21 09:32:02 imap1 dovecot: imap(----@---.com): Fatal: master: service(imap): child 30144 killed with signal 6 (core dumps disabled)


# doveconf -n
# 2.2.16: /etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.7
# OS: Linux 3.2.0-4-amd64 x86_64 Debian 7.8
auth_master_user_separator = *
auth_mechanisms = plain login cram-md5
auth_verbose = yes
auth_verbose_passwords = plain
dict {
  expire = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
  quota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
}
disable_plaintext_auth = no
login_greeting = Dovecot ready
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l pip=%{real_rip} mpid=%e %c session=<%{session}>
mail_gid = vmail
mail_location = /nowhere
mail_plugins = quota expire listescape
mail_uid = vmail
managesieve_sieve_capability = fileinto envelope encoded-character subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables mailbox date index ihave duplicate
namespace inbox {
  inbox = yes
  location =
  mailbox Drafts {
    auto = subscribe
    special_use = \Drafts
  }
  mailbox Junk {
    auto = subscribe
    special_use = \Junk
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    special_use = \Sent
  }
  mailbox Trash {
    auto = subscribe
    special_use = \Trash
  }
  prefix =
  separator = /
  type = private
}
passdb {
  args = /etc/dovecot/master-users
  driver = passwd-file
  master = yes
  pass = yes
}
passdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
plugin {
  antispam_backend = pipe
  antispam_pipe_program = /usr/bin/ssh
antispam_pipe_program_args = -l;spamd;-i;/etc/dovecot/sareport.key;mx1.xxxxx
  antispam_pipe_program_notspam_arg = revoke
  antispam_pipe_program_spam_arg = report
  antispam_pipe_tmpdir = /tmp
  antispam_spam = Junk
  antispam_trash_pattern_ignorecase = trash;Deleted *
  expire = Trash
  expire2 = Trash/*
  expire3 = Junk
  expire_dict = proxy::expire
  quota = dict:user::proxy::quota
  quota_rule = *:storage=2G
  quota_rule2 = Trash:storage=+250M
  quota_rule3 = Junk:ignore
  quota_warning = storage=95%% quota-warning 95 %u
  quota_warning2 = storage=85%% quota-warning 85 %u
  sieve = ~/.dovecot.sieve
  sieve_before = /etc/dovecot/sieve-global/fileinto-spam.sieve
  sieve_dir = ~/sieve
sieve_extensions = -vacation -body -reject -enotify -environment -virustest -spamtest
  sieve_max_actions = 32
  sieve_max_redirects = 4
  sieve_max_script_size = 10K
  sieve_quota_max_scripts = 100
  sieve_quota_max_storage = 4M
}
pop3_no_flag_updates = yes
protocols = imap pop3 lmtp sieve
service auth-worker {
  user = $default_internal_user
}
service auth {
  client_limit = 2448
  unix_listener auth-userdb {
    group = root
    mode = 0600
    user = vmail
  }
}
service dict {
  unix_listener dict {
    group = root
    mode = 0600
    user = vmail
  }
}
service imap-login {
  process_min_avail = 4
  service_count = 0
  vsz_limit = 192 M
}
service imap-postlogin {
  executable = script-login /usr/local/bin/postlogin
  unix_listener imap-postlogin {
    group = root
    mode = 0600
    user = vmail
  }
  user = root
}
service imap {
  executable = imap imap-postlogin
  process_limit = 1024
  vsz_limit = 128 M
}
service lmtp {
  inet_listener lmtp {
    address = 10.44.23.1
    port = 7025
  }
}
service managesieve-login {
  inet_listener sieve {
    port = 4190
  }
  service_count = 0
  vsz_limit = 64 M
}
service managesieve {
  process_limit = 20
}
service pop3-login {
  process_min_avail = 4
  service_count = 0
  vsz_limit = 192 M
}
service pop3 {
  executable = pop3 imap-postlogin
  process_limit = 1024
}
service quota-warning {
  executable = script /usr/local/bin/quota-warning
  unix_listener quota-warning {
    user = vmail
  }
  user = dovecot
}
ssl_cert = </etc/dovecot/dovecot.pem
ssl_key = </etc/dovecot/private/dovecot.pem
userdb {
  driver = prefetch
}
userdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
verbose_proctitle = yes
protocol lmtp {
  mail_plugins = quota expire listescape sieve
  plugin {
    quota = dict:user::noenforcing:proxy::quota
  }
}
protocol lda {
  mail_plugins = quota expire listescape sieve
}
protocol imap {
  mail_max_userip_connections = 12
  mail_plugins = quota expire listescape imap_quota antispam
  ssl_cert = </etc/dovecot/xxxxxx.crt
  ssl_key = </etc/dovecot/private/xxxxx.key
}
protocol sieve {
  mail_max_userip_connections = 5
}
protocol pop3 {
  mail_max_userip_connections = 10
  ssl_cert = </etc/dovecot/xxxxx.crt
  ssl_key = </etc/dovecot/private/xxxxx.key
}

Reply via email to