[Dovecot] assertion failed in 1.1.7 file mbox-sync.c: line 1305 (mbox_sync_handle_eof_updates)

Diego Liziero diegoliz at gmail.com
Thu Dec 4 09:26:21 EET 2008


Dovecot 1.1.7 is running so smoothly that I gave up checking its log
files daily. :)

I've just had a look, and among the usual
"IMAP(username): FETCH for mailbox Sent UID xx got too little data: xx vs xx"
messages (that means that unfortunately sometimes some messages are
still written truncated) I saw this assertion failure:

file mbox-sync.c: line 1305 (mbox_sync_handle_eof_updates): assertion
failed: (file_size >=
 sync_ctx->expunged_space + trailer_size)

Regards,
Diego.

----

(gdb) bt full
#0  0x008a9402 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00a2fd20 in raise () from /lib/libc.so.6
No symbol table info available.
#2  0x00a31631 in abort () from /lib/libc.so.6
No symbol table info available.
#3  0x080f73c0 in default_fatal_finish (type=LOG_TYPE_PANIC, status=0)
at failures.c:150
	backtrace = 0x97df358 "/usr/libexec/dovecot/imap [0x80f739e] ->
/usr/libexec/dovecot/imap [0x80f7c5f] ->
/usr/libexec/dovecot/imap(i_fatal+0) [0x80f7518] ->
/usr/libexec/dovecot/imap [0x80911de] -> /usr/libexec/dovecot/imap"...
#4  0x080f7c5f in i_internal_fatal_handler (type=LOG_TYPE_PANIC,
status=0, fmt=0x811771c "file %s: line %d (%s): assertion failed:
(%s)",
    args=0xbfbabf14 "\020w\021\b\031\005") at failures.c:430
No locals.
#5  0x080f7518 in i_panic (format=0x811771c "file %s: line %d (%s):
assertion failed: (%s)") at failures.c:197
	args = 0xbfbabf14 "\020w\021\b\031\005"
#6  0x080911de in mbox_sync_handle_eof_updates (sync_ctx=0xbfbac0f4,
mail_ctx=0xbfbac008) at mbox-sync.c:1305
	st = (const struct stat *) 0x97f3420
	file_size = 242
	offset = 242
	padding = 684287899293748052
	trailer_size = 0
	__PRETTY_FUNCTION__ = "mbox_sync_handle_eof_updates"
#7  0x08091d77 in mbox_sync_do (sync_ctx=0xbfbac0f4, flags=0) at
mbox-sync.c:1547
	mail_ctx = {sync_ctx = 0xbfbac0f4, mail = {uid = 0, idx_seq = 1,
keywords = {arr = {buffer = 0x0, element_size = 0}, v = 0x0,
      v_modifiable = 0x0}, flags = 12 '\f', uid_broken = 0, expunged =
1, pseudo = 0, from_offset = 0, body_size = 0, offset = 0,
    space = 243}, seq = 1, hdr_offset = 66, body_offset = 151,
header_first_change = 4294967295, header_last_change = 0,
  header = 0x9800878, hdr_md5_sum =
"�\035\214�\217\000�\004�\200\t\230��B~", content_length =
18446744073709551615, hdr_pos = {69, 12,
    4294967295, 82, 32}, parsed_uid = 2, last_uid_updated_value = 0,
last_uid_value_start_pos = 2, have_eoh = 1, need_rewrite = 0,
  seen_imapbase = 1, updated = 0, recent = 0, dirty = 0,
imapbase_rewrite = 0, imapbase_updated = 0}
	st = (const struct stat *) 0x97f3420
	i = 0
	ret = 1
	partial = 1
#8  0x0809277e in mbox_sync_int (mbox=0x97f0c28, flags=0) at mbox-sync.c:1806
	index_sync_ctx = (struct mail_index_sync_ctx *) 0x9808b38
	sync_view = (struct mail_index_view *) 0x97f1648
	trans = (struct mail_index_transaction *) 0x97f3168
	sync_ctx = {mbox = 0x97f0c28, flags = 0, input = 0x97f34e8,
file_input = 0x97f3400, write_fd = 8, orig_mtime = 1227954336,
  orig_atime = 1227954336, orig_size = 242, last_stat = {st_dev =
37637, __pad1 = 0, __st_ino = 4751377, st_mode = 33152, st_nlink = 1,
    st_uid = 631, st_gid = 508, st_rdev = 0, __pad2 = 0, st_size =
242, st_blksize = 4096, st_blocks = 16, st_atim = {
      tv_sec = 1227960259, tv_nsec = 0}, st_mtim = {tv_sec =
1227954336, tv_nsec = 0}, st_ctim = {tv_sec = 1227954336, tv_nsec =
0},
    st_ino = 4751377}, index_sync_ctx = 0x9808b38, sync_view =
0x97f1648, t = 0x97f3168, reset_hdr = {major_version = 0 '\0',
    minor_version = 0 '\0', base_header_size = 0, header_size = 0,
record_size = 0, compat_flags = 0 '\0', unused = "\000\000",
    indexid = 0, flags = 0, uid_validity = 0, next_uid = 0,
messages_count = 0, unused_old_recent_messages_count = 0,
    seen_messages_count = 0, deleted_messages_count = 0,
first_recent_uid = 0, first_unseen_uid_lowwater = 0,
    first_deleted_uid_lowwater = 0, log_file_seq = 0,
log_file_tail_offset = 0, log_file_head_offset = 0, sync_size = 0,
sync_stamp = 0,
    day_stamp = 0, day_first_uid = {0, 0, 0, 0, 0, 0, 0, 0}}, hdr =
0x97f1300, header = 0x9800878, from_line = 0x9800858,
  base_uid_validity = 1, base_uid_last = 2, base_uid_last_offset = 0,
mails = {arr = {buffer = 0x97f8c40, element_size = 52},
    v = 0x97f8c40, v_modifiable = 0x97f8c40}, sync_changes =
0x97f8c60, mail_keyword_pool = 0x9800168, saved_keywords_pool =
0x97f50d8,
  prev_msg_uid = 2, next_uid = 3, idx_next_uid = 3, seq = 1, idx_seq =
2, need_space_seq = 0, last_nonrecent_uid = 0,
  expunged_space = 243, space_diff = 0, dest_first_mail = 1,
first_mail_crlf_expunged = 0, delay_writes = 1, renumber_uids = 0,
  moved_offsets = 0, ext_modified = 0, index_reset = 0, errors = 0}
	sync_flags = MAIL_INDEX_SYNC_FLAG_DROP_RECENT
	lock_id = 23
	ret = 1
	changed = 1
	delay_writes = true
	__PRETTY_FUNCTION__ = "mbox_sync_int"
#9  0x08092a0a in mbox_sync (mbox=0x97f0c28, flags=0) at mbox-sync.c:1873
	ret = 1
#10 0x08092ad8 in mbox_storage_sync_init (box=0x97f0c28,
flags=MAILBOX_SYNC_FLAG_FIX_INCONSISTENT) at mbox-sync.c:1897
	mbox = (struct mbox_mailbox *) 0x97f0c28
	mbox_sync_flags = 0
	ret = 0
#11 0x080b70a4 in mailbox_sync_init (box=0x97f0c28,
flags=MAILBOX_SYNC_FLAG_FIX_INCONSISTENT) at mail-storage.c:516
No locals.
#12 0x080b711b in mailbox_sync (box=0x97f0c28,
flags=MAILBOX_SYNC_FLAG_FIX_INCONSISTENT, status_items=0,
status_r=0x0)
    at mail-storage.c:545
	ctx = (struct mailbox_sync_context *) 0x0
#13 0x0805b5b7 in cmd_close (cmd=0x97e95c8) at cmd-close.c:21
	client = (struct client *) 0x97e9368
	mailbox = (struct mailbox *) 0x97f0c28
	storage = (struct mail_storage *) 0x97e8c80
#14 0x080625c4 in client_command_input (cmd=0x97e95c8) at client.c:580
	client = (struct client *) 0x97e9368
	command = (struct command *) 0x7
	__PRETTY_FUNCTION__ = "client_command_input"
#15 0x080627f9 in client_command_input (cmd=0x97e95c8) at client.c:629
	client = (struct client *) 0x97e9368
	command = (struct command *) 0x97e856c
	__PRETTY_FUNCTION__ = "client_command_input"
#16 0x080628f7 in client_handle_next_command (client=0x97e9368,
remove_io_r=0xbfbac4a5) at client.c:670
	size = 11
#17 0x08062933 in client_handle_input (client=0x97e9368) at client.c:680
	_data_stack_cur_id = 3
	ret = 126
	remove_io = false
	handled_commands = false
#18 0x08062ac1 in client_input (client=0x97e9368) at client.c:725
	cmd = (struct client_command_context *) 0xad8408
	output = (struct ostream *) 0x97e94f4
	bytes = 11
	__PRETTY_FUNCTION__ = "client_input"
#19 0x08101ecd in io_loop_handler_run (ioloop=0x97e79b0) at ioloop-epoll.c:203
	ctx = (struct ioloop_handler_context *) 0x97e7aa8
	events = (struct epoll_event *) 0x97e7ae8
	event = (const struct epoll_event *) 0x97e7ae8
	list = (struct io_list *) 0x97e9570
	io = (struct io_file *) 0x9800550
	tv = {tv_sec = 0, tv_usec = 354274}
	events_count = 4
	t_id = 2
	msecs = 355
	ret = 1
	i = 0
	j = 0
	call = true
#20 0x08101164 in io_loop_run (ioloop=0x97e79b0) at ioloop.c:320
No locals.
#21 0x0806df19 in main (argc=1, argv=0xbfbac604, envp=0xbfbac60c) at main.c:293
No locals.
(gdb)


More information about the dovecot mailing list