[Dovecot] assertion failed (1.0-rc27)
Under Dovecot 1.0-rc27 on Solaris 10 we noticed this error today affecting one of our users repeatedly:
Mar 28 14:02:01 myhost dovecot: IMAP(myuser): file mbox-sync-rewrite.c: line 423 (mbox_sync_read_and_move): assertion failed: (need_space == (uoff_t)-mails[idx].space) Mar 28 14:02:01 myhost dovecot: IMAP(myuser): Raw backtrace: 0x7ac54 -> 0x42cd4 -> 0x3e968 -> 0x3f54c -> 0x3f980 -> 0x6c834 -> 0x298a0 -> 0x2114c -> 0x212e8 -> 0x22d60 -> 0x22cd8 -> 0x22ed8 -> 0x81004 -> 0x808d8 -> 0x2b3f8 -> 0x1db5c Mar 28 14:02:01 myhost dovecot: child 24818 (imap) killed with signal 6
I have no idea what the user experienced, as we simply noticed this in the logs (which appear on our consoles, too).
I hope this is enough information, as we do not run with core dumps enabled on our production servers.
--
Steven F. Siirila Office: Lind Hall, Room 130B Internet Services E-mail: sfs@umn.edu Office of Information Technology Voice: (612) 626-0244 University of Minnesota Fax: (612) 626-7593
On 28.3.2007, at 22.13, Steven F Siirila wrote:
Under Dovecot 1.0-rc27 on Solaris 10 we noticed this error today
affecting one of our users repeatedly:Mar 28 14:02:01 myhost dovecot: IMAP(myuser): file mbox-sync- rewrite.c: line 423 (mbox_sync_read_and_move): assertion failed:
(need_space == (uoff_t)-mails[idx].space)
In rc28 I've changed this assert to something that prints more useful
information. This assert alone doesn't really tell anything what the
problem could have been.
Anyway if it happened repeatedly, it would be nice to get the
anonymized mbox and index files. See http://wiki.dovecot.org/
MboxProblems
On Wed, Mar 28, 2007 at 10:24:40PM +0300, Timo Sirainen wrote:
On 28.3.2007, at 22.13, Steven F Siirila wrote:
Under Dovecot 1.0-rc27 on Solaris 10 we noticed this error today
affecting one of our users repeatedly:Mar 28 14:02:01 myhost dovecot: IMAP(myuser): file mbox-sync- rewrite.c: line 423 (mbox_sync_read_and_move): assertion failed:
(need_space == (uoff_t)-mails[idx].space)In rc28 I've changed this assert to something that prints more useful
information. This assert alone doesn't really tell anything what the
problem could have been.Anyway if it happened repeatedly, it would be nice to get the
anonymized mbox and index files. See http://wiki.dovecot.org/ MboxProblems
I have reproduced this on a test box; here is the backtrace from the core that was generated:
#0 0xff1c16e8 in _sys_siginfolist_data () from /lib/libc.so.1 #1 0xff15ff40 in __strxfrm_std () from /lib/libc.so.1 #2 0xff140160 in getutxline () from /lib/libc.so.1 #3 0x0007b1b8 in i_internal_panic_handler ( fmt=0x929c8 "file %s: line %d (%s): assertion failed: (%s)", args=0xffbfec98) at failures.c:403 #4 0x0007ac5c in i_panic ( format=0x929c8 "file %s: line %d (%s): assertion failed: (%s)") at failures.c:183 #5 0x00042cdc in mbox_sync_rewrite (sync_ctx=0xffbff3f8, mail_ctx=0x92800, end_offset=13387, move_diff=40611, extra_space=4295021294, first_seq=1, last_seq=163) at mbox-sync-rewrite.c:579 #6 0x0003e970 in mbox_sync_do (sync_ctx=0xffbff3f8, flags=4290769568) at mbox-sync.c:1332 #7 0x0003f554 in mbox_sync (mbox=0xc1c48, flags=MBOX_SYNC_UNDIRTY) at mbox-sync.c:1800 #8 0x0003f988 in mbox_storage_sync_init (box=0xc1c48, flags=MAILBOX_SYNC_FLAG_FULL_READ) at mbox-sync.c:1869 #9 0x0006c83c in mailbox_sync_init (box=0xc1c48, flags=MAILBOX_SYNC_FLAG_FULL_READ) at mail-storage.c:406 #10 0x000298a8 in imap_sync_nonselected (box=0xc1c48, flags=MAILBOX_SYNC_FLAG_FULL_READ) at imap-sync.c:196 #11 0x00021154 in _cmd_select_full (cmd=0xbbd7c, readonly=false) at cmd-select.c:39 #12 0x000212f0 in cmd_select (cmd=0xbbd7c) at cmd-select.c:92 #13 0x00022d68 in client_handle_input (cmd=0xbbd7c) at client.c:332 #14 0x00022ce0 in client_handle_input (cmd=0xbbd7c) at client.c:389 #15 0x00022ee0 in _client_input (context=0xbbd38) at client.c:432 #16 0x0008100c in io_loop_handler_run (ioloop=0xb9530) at ioloop-poll.c:199 #17 0x000808c8 in io_loop_run (ioloop=0xb9530) at ioloop.c:323 #18 0x0002b400 in main (argc=-4195374, argv=0xaf800, envp=0xb0be4) at main.c:287
I still have the core, in case there is other information from gdb that would be useful in diagnosing this.
--
Steven F. Siirila Office: Lind Hall, Room 130B Internet Services E-mail: sfs@umn.edu Office of Information Technology Voice: (612) 626-0244 University of Minnesota Fax: (612) 626-7593
On 29.3.2007, at 1.10, Steven F Siirila wrote:
Anyway if it happened repeatedly, it would be nice to get the anonymized mbox and index files. See http://wiki.dovecot.org/ MboxProblems
I have reproduced this on a test box; here is the backtrace from
the core that was generated:
Can you reproduce this multiple times? If so, I'd really like the
mbox file (anonymized) and the index files. It's much easier to fix
the problem if I can reproduce it myself.
I still have the core, in case there is other information from gdb
that would be useful in diagnosing this.
At least:
fr 5 p *mail_ctx p *sync_ctx p mails[idx]
On Thu, Mar 29, 2007 at 01:38:59AM +0300, Timo Sirainen wrote:
On 29.3.2007, at 1.10, Steven F Siirila wrote:
Anyway if it happened repeatedly, it would be nice to get the anonymized mbox and index files. See http://wiki.dovecot.org/ MboxProblems
I have reproduced this on a test box; here is the backtrace from
the core that was generated:Can you reproduce this multiple times? If so, I'd really like the
mbox file (anonymized) and the index files. It's much easier to fix
the problem if I can reproduce it myself.
I'll see what I can put together; however, let me know if the information below turns out to be sufficient...
I still have the core, in case there is other information from gdb
that would be useful in diagnosing this.At least:
fr 5
#5 0x00042cdc in mbox_sync_rewrite (sync_ctx=0xffbff3f8, mail_ctx=0x92800, end_offset=13387, move_diff=40611, extra_space=4295021294, first_seq=1, last_seq=163) at mbox-sync-rewrite.c:579 579 i_assert(move_diff + (off_t)expunged_space >= 0);
p *mail_ctx
$1 = {sync_ctx = 0x5f676574, mail = {uid = 2036297574, idx_seq = 1718838644, keywords = {buffer = 0x0, element_size = 0}, flags = 114 'r', uid_broken = 0 '\0', expunged = 1 '\001', pseudo = 1 '\001', from_offset = 4495277855392886630, body_size = 7382355763620035872, offset = 2915358819387143209, space = 3256384005565579264}, seq = 1769174130, hdr_offset = 8242000044805484408, body_offset = 6874574906695249764, header_first_change = 2036298601, header_last_change = 2053439488, header = 0x72737472, hdr_md5_sum = "eam->hdr_offset ", content_length = 8462094814726596909, hdr_pos = {822083584, 0, 1920169074, 1700883757, 1047355753}, parsed_uid = 1818194793, last_uid_updated_value = 2053447713, last_uid_value_start_pos = 1025517685, have_eoh = 0, need_rewrite = 1, seen_imapbase = 1, updated = 0, recent = 1, dirty = 1, imapbase_rewrite = 1, imapbase_updated = 1}
p *sync_ctx
$2 = {mbox = 0xc1c48, flags = MBOX_SYNC_UNDIRTY, input = 0xc6bd0, file_input = 0xc6ab0, write_fd = 8, orig_mtime = 1175119566, orig_size = 36478386, index_sync_ctx = 0xc30b8, sync_view = 0xc30f0, t = 0xc46a0, hdr = 0xc3138, header = 0xba6a0, from_line = 0xba678, base_uid_validity = 1155907017, base_uid_last = 9356, base_uid_last_offset = 0, mails = {buffer = 0xba6c8, element_size = 56}, syncs = {buffer = 0xba6f0, element_size = 20}, sync_rec = {uid1 = 0, uid2 = 0, type = 0, add_flags = 0 '\0', remove_flags = 0 '\0', keyword_idx = 0}, mail_keyword_pool = 0xc48f8, saved_keywords_pool = 0xc4a00, prev_msg_uid = 9356, next_uid = 10170, idx_next_uid = 1, seq = 813, idx_seq = 814, need_space_seq = 1, expunged_space = 0, space_diff = -40662, dest_first_mail = 1, first_mail_crlf_expunged = 0, delay_writes = 0, renumber_uids = 0, moved_offsets = 0}
p mails[idx]
$3 = {uid = 9357, idx_seq = 1, keywords = {buffer = 0x0, element_size = 0}, flags = 8 '\b', uid_broken = 0 '\0', expunged = 0 '\0', pseudo = 0 '\0', from_offset = 0, body_size = 11844, offset = 50, space = -11}
--
Steven F. Siirila Office: Lind Hall, Room 130B Internet Services E-mail: sfs@umn.edu Office of Information Technology Voice: (612) 626-0244 University of Minnesota Fax: (612) 626-7593
On Thu, Mar 29, 2007 at 01:38:59AM +0300, Timo Sirainen wrote:
On 29.3.2007, at 1.10, Steven F Siirila wrote:
Anyway if it happened repeatedly, it would be nice to get the anonymized mbox and index files. See http://wiki.dovecot.org/ MboxProblems
I have reproduced this on a test box; here is the backtrace from
the core that was generated:Can you reproduce this multiple times? If so, I'd really like the
mbox file (anonymized) and the index files. It's much easier to fix
the problem if I can reproduce it myself.
I tried sending you the 35MB mbox file, but your mail server doesn't allow that size...
I still have the core, in case there is other information from gdb
that would be useful in diagnosing this.At least:
fr 5 p *mail_ctx p *sync_ctx p mails[idx]
--
Steven F. Siirila Office: Lind Hall, Room 130B Internet Services E-mail: sfs@umn.edu Office of Information Technology Voice: (612) 626-0244 University of Minnesota Fax: (612) 626-7593
participants (2)
-
Steven F Siirila
-
Timo Sirainen