[Dovecot] Segfaul probably during dsync

Matthias Rieber ml-dovecot at zu-con.org
Sun Apr 10 14:55:18 EEST 2011


Hi,

I get core dumps, probably during dsync:

Core was generated by `dovecot/imap postlogin'.
Program terminated with signal 6, Aborted.
[New process 7727]
#0  0x00002ba911c04ed5 in raise () from /lib/libc.so.6
#0  0x00002ba911c04ed5 in raise () from /lib/libc.so.6
No symbol table info available.
#1  0x00002ba911c063f3 in abort () from /lib/libc.so.6
No symbol table info available.
#2  0x00002ba91157d775 in default_fatal_finish (type=<value optimized
out>, status=0) at failures.c:187
	backtrace = 0xcebd838 "/usr/local/lib/dovecot/libdovecot.so.0
[0x2ba91157d762] -> /usr/local/lib/dovecot/libdovecot.so.0
[0x2ba91157d7c6]
-> /usr/local/lib/dovecot/libdovecot.so.0(i_error+0) [0x2ba91157dbb8] ->
/usr/local/l"...
#3  0x00002ba91157d7c6 in i_internal_fatal_handler (ctx=0x7fffadba32a0,
format=<value optimized out>, args=<value optimized out>) at
failures.c:645
	status = 0
#4  0x00002ba91157dbb8 in i_panic (format=<value optimized out>) at
failures.c:259
	ctx = {type = LOG_TYPE_PANIC, exit_status = 0, timestamp = 0x0}
	args = {{gp_offset = 40, fp_offset = 48, overflow_arg_area =
0x7fffadba3370, reg_save_area = 0x7fffadba32b0}}
#5  0x00002ba9112b4018 in index_search_result_update_flags
(result=0xdebe3e0, uids=0x7fffadba3640) at index-search-result.c:87
	search_arg = {next = 0xd25b098, type = SEARCH_UIDSET, value = {subargs =
0x0, seqset = {arr = {buffer = 0xcebd640, element_size = 8}, v =
0xcebd640,

      v_modifiable = 0xcebd640}, str = 0x0, time = 0, size = 0, flags = 0,
search_flags = 0, date_type = 0, thread_type = MAIL_THREAD_NONE, keywords
=
0x0, 
    modseq = 0x0, search_args = 0x0, search_result = 0x0, mailbox_glob =
0x0}, context = 0x0, hdr_field_name = 0x0, not = 0, match_always = 0,
nonmatch_always = 0, 
  result = -1}
	ret = <value optimized out>
	__FUNCTION__ = "index_search_result_update_flags"
#6  0x00002ba91276ac92 in virtual_sync_backend_box (ctx=0xdebcdb0,
bbox=0xdcb8e38) at virtual-sync.c:725
	sync_flags = <value optimized out>
	status = {messages = 121, recent = 0, unseen = 111, uidvalidity =
1225530594, uidnext = 182153, first_unseen_seq = 0, first_recent_uid =
182152, 
  highest_modseq = 0, virtual_size = 0, keywords = 0x0, cache_fields =
0x0, nonpermanent_modseqs = 0}
	ret = <value optimized out>
	__FUNCTION__ = "virtual_sync_backend_box"
#7  0x00002ba91276b661 in virtual_storage_sync_init (box=0xcf524c0,
flags=MAILBOX_SYNC_FLAG_FIX_INCONSISTENT) at virtual-sync.c:1400
	sync_ctx = <value optimized out>
	ret = <value optimized out>
#8  0x00002ba911299b71 in mailbox_sync_init (box=0xcf524c0,
flags=MAILBOX_SYNC_FLAG_FIX_INCONSISTENT) at mail-storage.c:947
	_data_stack_cur_id = 0
	ctx = <value optimized out>
#9  0x00002ba91129a337 in mailbox_sync (box=0x1e2f, flags=7727) at
mail-storage.c:993
	ctx = <value optimized out>
	status = {sync_delayed_expunges = 0}
#10 0x0000000000417602 in imap_status_get (cmd=0xcf00410, ns=0xcefccd0,
mailbox=0xcebd330 "rapidsolution", items=0x7fffadba3a50,
result_r=0x7fffadba39e0, 
    error_r=0x7fffadba3a38) at imap-status.c:85
	client = (struct client *) 0xceffca0
	box = (struct mailbox *) 0x1e2f
	error = <value optimized out>
	ret = <value optimized out>
#11 0x000000000040e763 in cmd_status (cmd=0xcf00410) at cmd-status.c:52
	client = (struct client *) 0xceffca0
	status = MAILBOX_NAME_EXISTS_MAILBOX
	args = (const struct imap_arg *) 0xcf02c68
	list_args = (const struct imap_arg *) 0xcf02da8
	items = {mailbox_items = 17, guid = 0}
	result = {status = {messages = 124, recent = 0, unseen = 0, uidvalidity =
1301953092, uidnext = 1, first_unseen_seq = 0, first_recent_uid = 0, 
    highest_modseq = 0, virtual_size = 48005140525491, keywords = 0x0,
cache_fields = 0x80, nonpermanent_modseqs = 0}, 
  mailbox_guid = "{µW\021©+\000\000\200\000\000\000\000\000\000"}
	ns = <value optimized out>
	mailbox = 0xcf02d58 "virtual.rapidsolution"
	storage_name = 0xcebd330 "rapidsolution"
	error = <value optimized out>
#12 0x000000000041055c in client_command_input (cmd=0xcf00410) at
imap-client.c:672
	client = (struct client *) 0xceffca0
	command = <value optimized out>
	__FUNCTION__ = "client_command_input"
#13 0x000000000041060d in client_command_input (cmd=0xcf00410) at
imap-client.c:722
	client = (struct client *) 0xceffca0
	command = (struct command *) 0x6
	__FUNCTION__ = "client_command_input"
#14 0x0000000000410785 in client_handle_input (client=0xceffca0) at
imap-client.c:763
	_data_stack_cur_id = 3
	ret = 54
	remove_io = <value optimized out>
	handled_commands = false
	__FUNCTION__ = "client_handle_input"
#15 0x00000000004111a2 in client_input (client=0xceffca0) at
imap-client.c:814
	cmd = <value optimized out>
	output = (struct ostream *) 0xcf00288
	bytes = <value optimized out>
	__FUNCTION__ = "client_input"
#16 0x00002ba911588e38 in io_loop_call_io (io=0xcf00320) at ioloop.c:384
	ioloop = (struct ioloop *) 0xcec5620
	t_id = 2
#17 0x00002ba911589dc2 in io_loop_handler_run (ioloop=<value optimized
out>) at ioloop-epoll.c:213
	ctx = (struct ioloop_handler_context *) 0xcec5850
	event = (const struct epoll_event *) 0xcec58c0
	list = (struct io_list *) 0xcf00370
	io = (struct io_file *) 0x1e2f
	tv = {tv_sec = 4, tv_usec = 514891}
	msecs = <value optimized out>
	ret = <value optimized out>
	call = false
#18 0x00002ba911588dc8 in io_loop_run (ioloop=0xcec5620) at ioloop.c:405
No locals.
#19 0x00002ba911576c93 in master_service_run (service=0xcec54f0,
callback=0x1e2f) at master-service.c:478
No locals.
#20 0x0000000000419401 in main (argc=2, argv=0xcec5370) at main.c:375
	service_flags = <value optimized out>
	storage_service_flags = <value optimized out>
	postlogin_socket_path = 0xcebd080 "/usr/local/var/run/dovecot/postlogin"
	username = 0x0
	c = <value optimized out>
	set_roots = {0x41c680, 0x0}

Logfile:
Apr 10 13:49:34 shrike dovecot: imap-login: Login: user=<matthias>,
method=PLAIN, rip=127.0.0.1, lip=127.0.0.1, mpid=14235, secured
Apr 10 13:49:34 shrike dovecot: (null)Error: rawlog_open: open() failed
for /home/matthias/dovecot.rawlog/20110410-134934-14237.in: Permission
denied
Apr 10 13:49:43 shrike dovecot: imap(matthias): Panic: file
index-search-result.c: line 87 (search_result_update_search): assertion
failed: (next_uid == mail->uid)
Apr 10 13:49:43 shrike dovecot: imap(matthias): Error: Raw backtrace:
/usr/local/lib/dovecot/libdovecot.so.0 [0x2b4df76ce762] ->
/usr/local/lib/dovecot/libdovecot.so.0 [0x2b4df76ce7c6] ->
/usr/local/lib/dovecot/libdovecot.so.0(i_error+0) [0x2b4df76cebb8] ->
/usr/local/lib/dovecot/libdovecot-storage.so.0(index_search_result_update_flags+0x2d8)
[0x2b4df7405018] -> /usr/local/lib/dovecot/lib20_virtual_plugin.so
[0x2b4df88bbc92] ->
/usr/local/lib/dovecot/lib20_virtual_plugin.so(virtual_storage_sync_init+0x871)
[0x2b4df88bc661] ->
/usr/local/lib/dovecot/libdovecot-storage.so.0(mailbox_sync_init+0x31)
[0x2b4df73eab71] ->
/usr/local/lib/dovecot/libdovecot-storage.so.0(mailbox_sync+0x27)
[0x2b4df73eb337] -> dovecot/imap(imap_status_get+0x92) [0x417602] ->
dovecot/imap(cmd_status+0x163) [0x40e763] -> dovecot/imap [0x41055c] ->
dovecot/imap [0x41060d] -> dovecot/imap(client_handle_input+0x45)
[0x410785] -> dovecot/imap(client_input+0x62) [0x4111a2] ->
/usr/local/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x48) [0x2b4df
Apr 10 13:49:43 shrike dovecot: master: Error: service(imap): child 14235
killed with signal 6 (core dumped)


# dovecot --version
2.0.11 (cef23de90ff1)

Matthias



More information about the dovecot mailing list