[Dovecot] beta7: assert, Solaris 9

Jeff A. Earickson jaearick at colby.edu
Thu Apr 20 22:51:06 EEST 2006


Hi,

An assertion that I haven't seen before:

Apr 20 11:15:32 emerald dovecot: [ID 107833 mail.error] IMAP(user): file
mbox-sync-rewrite.c: line 106 (mbox_sync_headers_add_space): assertion
failed: (start_pos < data_size)

gdb output from the core file of imap is attached.  My setup:
Solaris 9, mbox format, INBOX is NFS mounted from a Solaris 10
system, imap and imaps only.

Jeff Earickson
Colby College
-------------- next part --------------
%gdb imap core.hacaraba
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "sparc-sun-solaris2.9"...
Core was generated by `imap'.
Program terminated with signal 6, Aborted.
Reading symbols from /usr/lib/libdl.so.1...done.
Loaded symbols for /usr/lib/libdl.so.1
Reading symbols from /usr/lib/libsocket.so.1...done.
Loaded symbols for /usr/lib/libsocket.so.1
Reading symbols from /usr/lib/libnsl.so.1...done.
Loaded symbols for /usr/lib/libnsl.so.1
Reading symbols from /usr/lib/librt.so.1...done.
Loaded symbols for /usr/lib/librt.so.1
Reading symbols from /usr/lib/libsendfile.so.1...done.
Loaded symbols for /usr/lib/libsendfile.so.1
Reading symbols from /usr/lib/libc.so.1...done.
Loaded symbols for /usr/lib/libc.so.1
Reading symbols from /usr/lib/libmp.so.2...done.
Loaded symbols for /usr/lib/libmp.so.2
Reading symbols from /usr/lib/libaio.so.1...done.
Loaded symbols for /usr/lib/libaio.so.1
Reading symbols from /usr/lib/libmd5.so.1...done.
Loaded symbols for /usr/lib/libmd5.so.1
Reading symbols from /usr/platform/SUNW,Ultra-1/lib/libc_psr.so.1...done.
Loaded symbols for /usr/platform/SUNW,Ultra-60/lib/libc_psr.so.1
#0  0xff2204f8 in _libc_kill () from /usr/lib/libc.so.1
(gdb) backtrace
#0  0xff2204f8 in _libc_kill () from /usr/lib/libc.so.1
#1  0xff1b6d18 in abort () from /usr/lib/libc.so.1
#2  0x00071fac in i_internal_panic_handler (fmt=0x0, args=0x873e8) at failures.c:375
#3  0x00072398 in i_panic (format=0x873e8 "file %s: line %d (%s): assertion failed: (%s)")
    at failures.c:173
#4  0x0003e5c0 in mbox_sync_headers_add_space (ctx=0x873e8, size=554008) at mbox-sync-rewrite.c:106
#5  0x0003e750 in mbox_sync_try_rewrite (ctx=0xffbff640, move_diff=The value of variable 'move_diff' is distributed across several
locations, and GDB cannot access its value.

) at mbox-sync-rewrite.c:252
#6  0x0003a2c0 in mbox_sync_loop (sync_ctx=0xffbff640, mail_ctx=0x0, partial=Cannot access memory at address 0xffffff9f
) at mbox-sync.c:737
#7  0x0003b650 in mbox_sync (mbox=0x0, flags=4290770496) at mbox-sync.c:1451
#8  0x00032f38 in mbox_storage_close (box=0x1) at mbox-storage.c:1047
#9  0x00063a6c in mailbox_close (_box=Variable "_box" is not available.
) at mail-storage.c:354
#10 0x00021534 in cmd_unselect (cmd=0xffbff8f4) at cmd-unselect.c:18
#11 0x00022050 in _client_input (context=Variable "context" is not available.
) at client.c:375
#12 0x0007760c in io_loop_handler_run (ioloop=0xaf2f8) at ioloop-poll.c:203
#13 0x00076e88 in io_loop_run (ioloop=0xacbf8) at ioloop.c:274
#14 0x0002a3f8 in main (argc=707576, argv=0x1, envp=0x0) at main.c:259
(gdb) up 4
#4  0x0003e5c0 in mbox_sync_headers_add_space (ctx=0x873e8, size=554008) at mbox-sync-rewrite.c:106
106             i_assert(start_pos < data_size);
(gdb) print start_pos
$1 = 0
(gdb) print data_size
$2 = 0
(gdb) print *ctx
$3 = {sync_ctx = 0x66696c65, mail = {uid = 543975790, idx_seq = 1696605540, keywords = {
      buffer = 0x20282573, element_size = 691675233}, flags = 115 's', uid_broken = 0,
    from_offset = 2334660562256225338, body_size = 2317143184821452800, offset = 7881984859801090414,
    space = 7146493963828095348}, seq = 1697538816, hdr_offset = 7166485042769453427,
  body_offset = 8385550126703146593, header_first_change = 1819632991, header_last_change = 1937006962,
  header = 0x745f706f, hdr_md5_sum = "s != 0\000\000\000\000\000\000ctx-",
  content_length = 6877119172238459471, hdr_pos = {1482639428, 1381980255, 1229799760, 1111577413,
    1562386749}, parsed_uid = 539521897, last_uid_value_start_pos = 2053463924, have_eoh = 0,
  need_rewrite = 0, seen_imapbase = 1, pseudo = 0, updated = 1, recent = 0, dirty = 0,
  imapbase_rewrite = 1, imapbase_updated = 0}
(gdb) print size
$4 = 554008
(gdb) print ctx->header
$5 = (string_t *) 0x745f706f
(gdb) print *ctx->header
Cannot access memory at address 0x745f706f
(gdb) print *(ctx->header)
Cannot access memory at address 0x745f706f
(gdb) print &(ctx->header)
$6 = (string_t **) 0x87448
(gdb) print &&(ctx->header)
A syntax error in expression, near `&&(ctx->header)'.
(gdb) print ctx.header
$7 = (string_t *) 0x745f706f
(gdb) print ctx->(*header)
A syntax error in expression, near `(*header)'.
(gdb) quit


More information about the dovecot mailing list