[Dovecot] corrupt mdbox, force-resync segfaults
I could use some help with a corrupt mdbox. doveadm force-resync is crashing (see below), but I really need just to get this account functioning. What's my next step, as far as deleting index files?
These were the earliest errors I could find:
Nov 28 09:40:21 macy dovecot[6615]: imap(cory@metro-email.com): Error: Corrupted index cache file /opt/mail/metro-email.com/cory/mdbox/mailboxes/INBOX/dbox-Mails/dovecot.index.cache: field index too large (66 >= 30)Nov 28 09:40:21 macy dovecot[6615]: imap(cory@metro-email.com): Error: mdbox map /opt/mail/metro-email.com/cory/mdbox/storage/dovecot.map.index corrupted: Unexpectedly lost INBOX uid=1233 map_uid=1708
As for the segfaults, I am getting this regardless of which mailbox I specify:
# /opt/dovecot/bin/doveadm -Dv force-resync -u cory INBOX
doveadm(root): Debug: Loading modules from directory:
/opt/dovecot/lib/dovecot
doveadm(root): Debug: Module loaded:
/opt/dovecot/lib/dovecot/lib15_notify_plugin.so
doveadm(root): Debug: Module loaded:
/opt/dovecot/lib/dovecot/lib20_fts_plugin.so
doveadm(root): Debug: Module loaded:
/opt/dovecot/lib/dovecot/lib20_mail_log_plugin.so
doveadm(root): Debug: Module loaded:
/opt/dovecot/lib/dovecot/lib21_fts_squat_plugin.so
doveadm(root): Debug: Loading modules from directory:
/opt/dovecot-2.1.10/lib/dovecot/doveadm
doveadm(root): Debug: Skipping module doveadm_acl_plugin, because
dlopen() failed:
dlopen(/opt/dovecot-2.1.10/lib/dovecot/doveadm/lib10_doveadm_acl_plugin.so,
10): Symbol not found:
_acl_user_module
Referenced from:
/opt/dovecot-2.1.10/lib/dovecot/doveadm/lib10_doveadm_acl_plugin.so
Expected in: flat namespace
in /opt/dovecot-2.1.10/lib/dovecot/doveadm/lib10_doveadm_acl_plugin.so
(this is usually intentional, so just ignore this message)
doveadm(root): Debug: Skipping module doveadm_expire_plugin, because
dlopen() failed:
dlopen(/opt/dovecot-2.1.10/lib/dovecot/doveadm/lib10_doveadm_expire_plugin.so,
10): Symbol not
found: _expire_set_deinit
Referenced from:
/opt/dovecot-2.1.10/lib/dovecot/doveadm/lib10_doveadm_expire_plugin.so
Expected in: flat namespace
in
/opt/dovecot-2.1.10/lib/dovecot/doveadm/lib10_doveadm_expire_plugin.so
(this is usually intentional, so just ignore this message)
doveadm(root): Debug: Skipping module doveadm_quota_plugin, because
dlopen() failed:
dlopen(/opt/dovecot-2.1.10/lib/dovecot/doveadm/lib10_doveadm_quota_plugin.so,
10): Symbol not fo
und: _quota_user_module
Referenced from:
/opt/dovecot-2.1.10/lib/dovecot/doveadm/lib10_doveadm_quota_plugin.so
Expected in: flat namespace
in
/opt/dovecot-2.1.10/lib/dovecot/doveadm/lib10_doveadm_quota_plugin.so
(this is usually intentional, so just ignore this message)
doveadm(root): Debug: Skipping module doveadm_zlib_plugin, because
dlopen() failed:
dlopen(/opt/dovecot-2.1.10/lib/dovecot/doveadm/lib10_doveadm_zlib_plugin.so,
10): Symbol not found: _i_stream_create_deflate
Referenced from:
/opt/dovecot-2.1.10/lib/dovecot/doveadm/lib10_doveadm_zlib_plugin.so
Expected in: flat namespace
in /opt/dovecot-2.1.10/lib/dovecot/doveadm/lib10_doveadm_zlib_plugin.so
(this is usually intentional, so just ignore this message)
doveadm(root): Debug: Module loaded:
/opt/dovecot-2.1.10/lib/dovecot/doveadm/lib20_doveadm_fts_plugin.so
doveadm(cory): Debug: auth input: cory@domain.com uid=302 gid=6
home=/opt/mail/domain.com/cory
doveadm(cory): Debug: changed username to cory@domain.com
doveadm(cory): Debug: Effective uid=302, gid=6,
home=/opt/mail/domain.com/cory
doveadm(cory): Debug: Namespace inbox: type=private, prefix=, sep=/,
inbox=yes, hidden=no, list=yes, subscriptions=yes
location=mdbox:/opt/mail/domain.com/cory/mdbox
doveadm(cory): Debug: fs: root=/opt/mail/domain.com/cory/mdbox, index=,
control=, inbox=, alt=
doveadm(cory): Debug: Namespace : Using permissions from
/opt/mail/domain.com/cory/mdbox: mode=0700 gid=-1
doveadm(cory): Warning: mdbox /opt/mail/domain.com/cory/mdbox/storage:
rebuilding indexes
doveadm(cory): Error: mdbox /opt/mail/domain.com/cory/mdbox/storage:
Duplicate GUID c3bbb2234d93af505873010097ac0257 in m.1:428519 and
m.1:441340
doveadm(cory): Error: mdbox /opt/mail/domain.com/cory/mdbox/storage:
Duplicate GUID c3bbb2234d93af505873010097ac0257 in m.1:428519 and
m.1:453628
[...]
doveadm(cory): Error: mdbox /opt/mail/domain.com/cory/mdbox/storage:
Duplicate GUID d45f7f111894af506273010097ac0257 in m.83:8565306 and
m.83:8594879
Segmentation fault: 11
macy:postfix root# /opt/dovecot/bin/doveconf -n # 2.1.10: /opt/dovecot-2.1.10/etc/dovecot/dovecot.conf doveconf: Warning: service anvil { client_limit=1000 } is lower than required under max. load (1503) # OS: Darwin 11.4.2 x86_64 auth_cache_negative_ttl = 0 auth_cache_size = 1 M auth_debug = yes auth_debug_passwords = yes auth_mechanisms = plain login auth_username_format = %n@domain.com auth_verbose = yes auth_verbose_passwords = plain default_internal_user = _dovecot default_login_user = _dovenull default_process_limit = 500 disable_plaintext_auth = no first_valid_uid = 300 instance_name = dovecot-2.1.10 listen = 192.168.20.123 mail_debug = yes mail_location = mdbox:%h/mdbox mail_plugin_dir = /opt/dovecot/lib/dovecot mail_plugins = fts fts_squat mail_log notify mail_privileged_group = mail 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 environment mailbox date ihave mdbox_rotate_size = 10 M namespace inbox { inbox = yes location = prefix = separator = / } passdb { args = scheme=CRYPT username_format=%u /opt/dovecot/etc/dovecot/users driver = passwd-file } plugin { fts = squat mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename mail_log_fields = uid box msgid size from subject } protocols = imap lmtp service aggregator { fifo_listener replication-notify-fifo { mode = 00 } } service auth { unix_listener /opt/local/var/spool/postfix/private/auth { group = _postfix mode = 0660 user = _postfix } unix_listener auth-userdb { group = mail mode = 0660 user = admin } } service director { fifo_listener login/proxy-notify { mode = 00 } } service imap { executable = imap postlogin } service lmtp { unix_listener /opt/local/var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0660 user = postfix } } service postlogin { executable = script-login rawlog -t } service stats { fifo_listener stats-mail { mode = 00 } } ssl_cert =
On 28.11.2012, at 18.54, Metro Domain Admin wrote:
I could use some help with a corrupt mdbox. doveadm force-resync is crashing (see below), but I really need just to get this account functioning. What's my next step, as far as deleting index files?
gdb backtrace would be helpful in fixing the crash. http://dovecot.org/bugreport.html
Probably you can do simply:
gdb --args /opt/dovecot/bin/doveadm -Dv force-resync -u cory INBOX run bt full
or if that doesn't work (or simply gives "??" lines or other unusable garbage), try:
ulimit -c unlimited /opt/dovecot/bin/doveadm -Dv force-resync -u cory INBOX gdb /opt/dovecot/bin/doveadm core bt full
Also the just released v2.1.11 fixes some potential crashes.
On Thu, Nov 29, 2012, at 01:48 AM, Timo Sirainen wrote:
On 28.11.2012, at 18.54, Metro Domain Admin wrote:
I could use some help with a corrupt mdbox. doveadm force-resync is crashing (see below), but I really need just to get this account functioning. What's my next step, as far as deleting index files?
[...]
I keep meaning to come back to this but haven't found the time, so I'll just report back my initial result: 2.1.12 did seem to fix this. Much appreciated!
participants (2)
-
Metro Domain Admin
-
Timo Sirainen