Hello Timo,
Today I've moved one message from INBOX to a virtual folder which made
imap processes crash as soon as INBOX was selected.
Jun 24 17:24:50 server dovecot: imap(u...@example.com): Panic: file
mail-index-view.c: line 149 (view_lookup_full): assertion failed: (seq >
0 && seq <= mail_index_view_get_messages_count(view))
Removing mail_log plugin made it working again. Even after re-enabling
mail_log plugin there are no crashes anymore.
The full backtrace and doveconf -n output are attached.
Thanks for your help!
-e-frog
# 2.0.13 (327486d79620): /etc/dovecot/dovecot.conf
# OS: Linux 2.6.38-8-generic-pae i686 Ubuntu 11.04
deliver_log_format = msgid=%m: from=%f: %$
dict {
dictionary = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
}
lda_mailbox_autocreate = yes
lda_mailbox_autosubscribe = yes
mail_gid = vmail
mail_home = /home/vmail/%Ld/%Ln
mail_location = mdbox:~/mdbox
mail_plugins = quota virtual fts fts_squat
mail_uid = vmail
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
namespace {
hidden = no
inbox = yes
list = yes
location =
prefix =
separator = /
subscriptions = yes
type = private
}
namespace {
location = virtual:~/virtual
prefix = virtual/
separator = /
subscriptions = no
type = private
}
passdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
plugin {
antispam_backend = spool2dir
antispam_spam = Junk
antispam_spool2dir_notspam = /home/vmail/learn-ham/%%020lu-%u-%%05luh
antispam_spool2dir_spam = /home/vmail/learn-spam/%%020lu-%u-%%05lus
antispam_trash = Trash
fts = squat
fts_squat = partial=4 full=10
quota = dict:user::proxy::dictionary
sieve = ~/dovecot.sieve
sieve_before = /home/vmail/etc/sieve-global/
sieve_dir = ~/sieve
}
postmaster_address = postmas...@example.com
protocols = " imap lmtp sieve"
quota_full_tempfail = yes
service anvil {
unix_listener anvil {
user = vmail
}
}
service auth {
unix_listener /var/spool/postfix/private/dovecot-auth {
group = postfix
mode = 0660
user = postfix
}
unix_listener auth-userdb {
mode = 0600
user = vmail
}
}
service config {
unix_listener config {
mode = 0600
user = vmail
}
}
service dict {
unix_listener dict {
mode = 0600
user = vmail
}
}
service imap-login {
inet_listener imaps {
port = 0
}
process_min_avail = 2
service_count = 0
}
service imap {
executable = imap postlogin
}
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
group = postfix
mode = 0660
user = postfix
}
user = vmail
}
service postlogin {
executable = script-login /home/vmail/bin/dovecot-postlogin.sh
user = vmail
}
ssl = required
ssl_cert = </etc/ssl/certs/dovecot.pem
ssl_key = </etc/ssl/private/dovecot.pem
userdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
verbose_proctitle = yes
protocol lmtp {
mail_plugins = quota virtual fts fts_squat sieve
}
protocol imap {
mail_plugins = quota virtual fts fts_squat imap_quota antispam mail_log notify
}
Jun 24 17:24:50 server dovecot: imap(u...@example.com): Panic: file
mail-index-view.c: line 149 (view_lookup_full): assertion failed: (seq > 0 &&
seq <= mail_index_view_get_messages_count(view))
Core was generated by `dovecot/imap [user@ex'.
Program terminated with signal 6, Aborted.
#0 0xb7812424 in __kernel_vsyscall ()
(gdb) bt full
#0 0xb7812424 in __kernel_vsyscall ()
No symbol table info available.
#1 0xb7596e71 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
resultvar = <value optimized out>
resultvar = <value optimized out>
pid = -1217622028
selftid = 10683
#2 0xb759a34e in abort () at abort.c:92
save_stage = 2
act = {__sigaction_handler = {sa_handler = 0xb76e6ca8, sa_sigaction =
0xb76e6ca8}, sa_mask = {__val = {3214349892, 3078818420, 0, 3077418304, 1, 0,
1, 3078691784, 3077906420, 3077684371, 2, 158149184, 2159, 36, 0,
3077684608, 3077515099, 3077906420, 0, 0, 3214349968, 3077515519,
3078691784, 3077493564, 3077416304, 3077906420, 3077906420, 2159, 3214349928,
3077684910, 3214349900, 10}}, sa_flags = -1080617276,
sa_restorer = 0xb7752c6c <pid.3763>}
sigs = {__val = {32, 0 <repeats 31 times>}}
#3 0xb771c675 in default_fatal_finish (type=<value optimized out>,
status=<value optimized out>) at failures.c:187
backtrace = 0x96d1a10 "/usr/lib/dovecot/libdovecot.so.0(+0x37661)
[0xb771c661] -> /usr/lib/dovecot/libdovecot.so.0(+0x376cf) [0xb771c6cf] ->
/usr/lib/dovecot/libdovecot.so.0(i_fatal+0) [0xb76f267e] ->
/usr/lib/dovecot/libdo"...
#4 0xb771c6cf in i_internal_fatal_handler (ctx=0xbf971734, format=0xb77fbfe0
"file %s: line %d (%s): assertion failed: (%s)", args=0xbf971754
"\031\255\200\267\225") at failures.c:645
status = 0
#5 0xb76f267e in i_panic (format=0xb77fbfe0 "file %s: line %d (%s): assertion
failed: (%s)") at failures.c:259
ctx = {type = LOG_TYPE_PANIC, exit_status = 0, timestamp = 0x0}
args = 0xbf971754 "\031\255\200\267\225"
#6 0xb77ee53f in view_lookup_full (view=0x971ee58, seq=0, map_r=0xbf97190c,
expunged_r=0xbf9718cf) at mail-index-view.c:149
broken_rec = {uid = 0, flags = 0 '\000'}
map = <value optimized out>
rec = <value optimized out>
head_rec = <value optimized out>
__FUNCTION__ = "view_lookup_full"
#7 0xb77e4d10 in tview_lookup_full (view=0x971ee58, seq=0, map_r=0xbf97190c,
expunged_r=0xbf9718cf) at mail-index-transaction-view.c:146
tview = 0x971ee58
rec = <value optimized out>
#8 0xb77edea5 in view_lookup_ext_full (view=0x971ee58, seq=0, ext_id=0,
map_r=0xbf97190c, data_r=0xbf971908, expunged_r=0xbf9718cf) at
mail-index-view.c:344
rec = <value optimized out>
#9 0xb77e51c7 in tview_lookup_ext_full (view=0x971ee58, seq=0, ext_id=0,
map_r=0xbf97190c, data_r=0xbf971908, expunged_r=0xbf9718cf) at
mail-index-transaction-view.c:422
tview = 0x971ee58
ext_buf = <value optimized out>
idx = <value optimized out>
__FUNCTION__ = "tview_lookup_ext_full"
#10 0xb77ee8fa in mail_index_lookup_ext_full (view=0x971ee58, seq=0, ext_id=0,
map_r=0xbf97190c, data_r=0xbf971908, expunged_r=<value optimized out>) at
mail-index-view.c:526
expunged = false
#11 0xb77eec87 in view_lookup_keywords (view=0x971ee58, seq=0,
keyword_idx=0x972982c) at mail-index-view.c:317
map = 0xb7751ff4
data = 0x0
#12 0xb77e47d7 in tview_lookup_keywords (view=0x971ee58, seq=0,
keyword_idx=0x972982c) at mail-index-transaction-view.c:293
tview = 0x971ee58
t = 0x971eb88
updates = <value optimized out>
i = <value optimized out>
count = <value optimized out>
#13 0xb77ee67d in mail_index_lookup_keywords (view=0x971ee58, seq=0,
keyword_idx=0x972982c) at mail-index-view.c:459
No locals.
#14 0xb77894a2 in index_mail_get_keyword_indexes (_mail=0x97296b0) at
index-mail.c:192
mail = 0x97296b0
data = 0x9729774
#15 0xb7789510 in index_mail_get_keywords (_mail=0x97296b0) at index-mail.c:166
mail = 0x97296b0
data = 0x9729774
names = <value optimized out>
keyword_indexes = <value optimized out>
i = <value optimized out>
count = <value optimized out>
__FUNCTION__ = "index_mail_get_keywords"
#16 0xb776d1ef in mail_get_keywords (mail=0x97296b0) at mail.c:69
p = 0x97296b0
#17 0xb753685d in mail_log_append_mail_message_real (ctx=0x971f508,
mail=0x97296b0, event=MAIL_LOG_EVENT_COPY, desc=0x96d18a0 "copy from INBOX") at
mail-log-plugin.c:264
muser = 0x96f7da8
msg = 0x971f518
text = 0x96d18c0
size = 10419
#18 mail_log_append_mail_message (ctx=0x971f508, mail=0x97296b0,
event=MAIL_LOG_EVENT_COPY, desc=0x96d18a0 "copy from INBOX") at
mail-log-plugin.c:302
_data_stack_cur_id = 4
muser = <value optimized out>
#19 0xb76ddcbe in notify_contexts_mail_copy (src=0x97210e0, dst=0x97296b0) at
notify-plugin.c:74
ctx = 0x96f6be8
mail_txn = <value optimized out>
#20 0xb76deda3 in notify_copy (ctx=0x97258d0, mail=0x97210e0) at
notify-storage.c:106
lt = 0x971f4c0
lbox = <value optimized out>
ret = <value optimized out>
#21 0xb75148ac in antispam_copy (ctx=0x97258d0, mail=0x97210e0) at mailbox.c:117
t = 0x971eb18
asmb = 0x9709030
asms = 0x9704678
ast = 0x971fcf0
asu = 0x96f7db8
copy_type = <value optimized out>
#22 0xb77756db in mailbox_copy (_ctx=0xbf971c08, mail=0x97210e0) at
mail-storage.c:1461
ctx = 0x97258d0
box = 0x9708bc0
keywords = 0x0
ret = <value optimized out>
#23 0x0804f411 in fetch_and_copy (cmd=0x96ff128) at cmd-copy.c:66
search_ctx = 0x9720f78
src_trans = 0x971fd58
srcset_ctx = {str = 0x96d14e8, first_uid = 0, last_uid = 4294967295}
ret = 1
save_ctx = 0x0
mail = 0x97210e0
copy_count = 1
src_uidset = 0x96d14e8
#24 cmd_copy (cmd=0x96ff128) at cmd-copy.c:151
client = 0x96feb28
dest_ns = <value optimized out>
dest_storage = <value optimized out>
destbox = 0x9708bc0
t = 0x971eb18
search_args = 0x9707bb8
messageset = 0x97019e0 "9416"
mailbox = 0x97019e8 "virtual/Lists"
storage_name = 0x97019f0 "Lists"
src_uidset = <value optimized out>
status = MAILBOX_NAME_EXISTS_MAILBOX
sync_flags = 0
imap_flags = 0
changes = {pool = 0xbf971d0c, uid_validity = 3214351384, saved_uids =
{arr = {buffer = 0x96d11d0, element_size = 158331176}, v = 0x96d11d0,
v_modifiable = 0x96d11d0}, ignored_modseq_changes = 158341592}
copy_count = <value optimized out>
msg = <value optimized out>
ret = <value optimized out>
__FUNCTION__ = "cmd_copy"
---Type <return> to continue, or q <return> to quit---
#25 0x080561dc in client_command_input (cmd=0x96ff128) at imap-client.c:672
client = 0x96feb28
command = <value optimized out>
__FUNCTION__ = "client_command_input"
#26 0x080562a8 in client_command_input (cmd=0x96ff128) at imap-client.c:722
client = 0x96feb28
command = <value optimized out>
__FUNCTION__ = "client_command_input"
#27 0x080564fd in client_handle_next_command (client=0x96feb28) at
imap-client.c:763
size = 33
#28 client_handle_input (client=0x96feb28) at imap-client.c:775
_data_stack_cur_id = 3
ret = false
remove_io = false
handled_commands = false
__FUNCTION__ = "client_handle_input"
#29 0x08056e0f in client_input (client=0x96feb28) at imap-client.c:814
cmd = <value optimized out>
output = 0x96ff04c
bytes = 33
__FUNCTION__ = "client_input"
#30 0xb772a001 in io_loop_call_io (io=0x96ff0a8) at ioloop.c:384
ioloop = 0x96d9398
t_id = 2
#31 0xb772b233 in io_loop_handler_run (ioloop=0x96d9398) at ioloop-epoll.c:213
ctx = 0x96d94c0
events = <value optimized out>
event = 0x96d9500
list = 0x96ff0d0
io = <value optimized out>
tv = {tv_sec = 4, tv_usec = 928551}
events_count = 158331088
msecs = 1
ret = 1
i = <value optimized out>
j = <value optimized out>
call = <value optimized out>
#32 0xb7729f80 in io_loop_run (ioloop=0x96d9398) at ioloop.c:405
No locals.
#33 0xb77156ea in master_service_run (service=0x96d92e8, callback=0x805eff0
<client_connected>) at master-service.c:481
No locals.
#34 0x0805f9dd in main (argc=2, argv=0xbf971f94) at main.c:375
set_roots = {0x8062340, 0x0}
service_flags = <value optimized out>
storage_service_flags = <value optimized out>
postlogin_socket_path = <value optimized out>
username = <value optimized out>
c = <value optimized out>