We upgraded from 1.0-beta7 to 1.0-rc17 on Tuesday evening and looking at
today's logs, just four imap processes out of 90,000+ died. I managed to
get core files (the server is running Solaris 8 on Sparc, and Dovecot
was compiled with gcc 3.3.2). I hope they're useful!
(I should also say that performance between the two versions is roughly
similar according to Solaris' process accounting stats, looking at CPU
usage and disk blocks accessed.)
Best Wishes,
Chris
1) Here's the last log entry for each
> dovecot: Jan 11 11:39:59 Info: IMAP 5751 xxxxxxxx xxx.xxx.xxx.xxx : Opened
Sent (18 msgs)
> dovecot: Jan 11 11:39:59 Error: child 5751 (imap) killed with signal 11
> dovecot: Jan 11 12:28:49 Info: IMAP 12765 xxxxxxxx xxx.xxx.xxx.xxx :
Disconnected: Internal error occurred. Refer to server log for more information.
[2007-01-11 12:28:49]
> dovecot: Jan 11 12:28:49 Error: child 12765 (imap) killed with signal 10
> dovecot: Jan 11 13:01:49 Info: IMAP 14234 xxxxxxxx xxx.xxx.xxx.xxx : Opened
List Reading (124 msgs)
> dovecot: Jan 11 13:01:54 Error: child 14234 (imap) killed with signal 10
> dovecot: Jan 11 19:13:55 Info: IMAP 18786 xxxxxxxx xxx.xxx.xxx.xxx : Opened
Sent (45 msgs)
> dovecot: Jan 11 19:13:57 Error: child 18786 (imap) killed with signal 11
(I have extra logging lines in cmd-select.c, hence the "Opened" lines)
2) backtraces!
pid 5751
> #0 0xff1c2838 in t_delete () from /usr/lib/libc.so.1
> #1 0xff1c23e4 in realfree () from /usr/lib/libc.so.1
> #2 0xff1c1f48 in _malloc_unlocked () from /usr/lib/libc.so.1
> #3 0xff1c1ce0 in malloc () from /usr/lib/libc.so.1
> #4 0xff1b617c in calloc () from /usr/lib/libc.so.1
> #5 0x89c18 in pool_system_malloc (pool=0xb66f0, size=156) at
mempool-system.c:67
> #6 0x84ab8 in i_malloc (size=156) at imem.c:9
> #7 0x43b2c in mbox_md5_init () at mbox-md5.c:94
> #8 0x3df20 in mbox_sync_parse_match_mail (mbox=0xcee58, view=0xcdde8,
seq=2) at mbox-sync-parse.c:557
> #9 0x3966c in mbox_file_seek (mbox=0xcee58, view=0xcdde8, seq=2,
deleted_r=0xffbeee47) at mbox-file.c:195
> #10 0x3b628 in mbox_mail_seek (mail=0xd0bf8) at mbox-mail.c:69
> #11 0x3b988 in mbox_mail_get_stream (_mail=0xd0bf8, hdr_size=0x0,
body_size=0x0) at mbox-mail.c:184
> #12 0x70458 in mail_get_stream (mail=0x0, hdr_size=0x0, body_size=0x0) at
mail.c:107
> #13 0x5321c in index_mail_get_header_stream (_mail=0xd0bf8,
_headers=0xd1368) at index-mail-headers.c:638
> #14 0x70434 in mail_get_header_stream (mail=0x0, headers=0xd1368) at
mail.c:98
> #15 0x529ec in index_mail_headers_get_envelope (mail=0xd0bf8) at
index-mail-headers.c:408
> #16 0x515c8 in index_mail_get_special (_mail=0xd0bf8,
field=MAIL_FETCH_IMAP_ENVELOPE) at index-mail.c:706
> #17 0x70474 in mail_get_special (mail=0xd0bf8,
field=MAIL_FETCH_IMAP_ENVELOPE) at mail.c:114
> #18 0x254d0 in fetch_envelope (ctx=0xd0bf8, mail=0xd0bf8, context=0x0) at
imap-fetch.c:450
> #19 0x24e80 in imap_fetch (ctx=0xc4a58) at imap-fetch.c:291
> #20 0x1f62c in cmd_fetch (cmd=0xc27a4) at cmd-fetch.c:163
> #21 0x23334 in client_handle_input (cmd=0xc27a4) at client.c:331
> #22 0x232b4 in client_handle_input (cmd=0xc27a4) at client.c:388
> #23 0x23430 in _client_input (context=0xc2760) at client.c:428
> #24 0x87924 in io_loop_handler_run (ioloop=0xbf838) at ioloop-poll.c:199
> #25 0x87184 in io_loop_run (ioloop=0xbf838) at ioloop.c:281
> #26 0x2c658 in main (argc=0, argv=0xffbef5ec, envp=0xffbef5fc) at
main.c:280
pid 12765
> #0 0xff1c27f0 in t_delete () from /usr/lib/libc.so.1
> #1 0xff1c23e4 in realfree () from /usr/lib/libc.so.1
> #2 0xff1c2c24 in _free_unlocked () from /usr/lib/libc.so.1
> #3 0xff1c2b74 in free () from /usr/lib/libc.so.1
> #4 0x5b550 in mail_index_free (_index=0xcac54) at mail-index.c:62
> #5 0x552f0 in index_list_free (list=0xcac50) at index-storage.c:84
> #6 0x555fc in destroy_unrefed (all=true) at index-storage.c:162
> #7 0x379ac in mbox_free (_storage=0xc2598) at mbox-storage.c:369
> #8 0x711a4 in mail_storage_destroy (_storage=0xc1a2c) at
mail-storage.c:204
> #9 0x2cbd8 in namespace_deinit (namespaces=0xc1a10) at namespace.c:156
> #10 0x22a00 in client_destroy (client=0xc2760, reason=0x0) at client.c:90
> #11 0x87924 in io_loop_handler_run (ioloop=0xbf838) at ioloop-poll.c:199
> #12 0x87184 in io_loop_run (ioloop=0xbf838) at ioloop.c:281
> #13 0x2c658 in main (argc=0, argv=0xffbef604, envp=0xffbef614) at
main.c:280
pid 14234
> #0 0xff1c2838 in t_delete () from /usr/lib/libc.so.1
> #1 0xff1c23e4 in realfree () from /usr/lib/libc.so.1
> #2 0xff1c2cb8 in cleanfree () from /usr/lib/libc.so.1
> #3 0xff1c1dec in _malloc_unlocked () from /usr/lib/libc.so.1
> #4 0xff1c1ce0 in malloc () from /usr/lib/libc.so.1
> #5 0xff1b617c in calloc () from /usr/lib/libc.so.1
> #6 0x89c18 in pool_system_malloc (pool=0xb66f0, size=28) at
mempool-system.c:67
> #7 0x86d7c in timeout_add (msecs=1740000, callback=0x1f920
<idle_timeout>, context=0xc4a18) at ioloop.c:146
> #8 0x1fda0 in cmd_idle (cmd=0xc27a4) at cmd-idle.c:245
> #9 0x23334 in client_handle_input (cmd=0xc27a4) at client.c:331
> #10 0x232b4 in client_handle_input (cmd=0xc27a4) at client.c:388
> #11 0x23430 in _client_input (context=0xc2760) at client.c:428
> #12 0x87924 in io_loop_handler_run (ioloop=0xbf838) at ioloop-poll.c:199
> #13 0x87184 in io_loop_run (ioloop=0xbf838) at ioloop.c:281
> #14 0x2c658 in main (argc=0, argv=0xffbef5fc, envp=0xffbef60c) at
main.c:280
pid 18786
> #0 0xff1c2974 in t_splay () from /usr/lib/libc.so.1
> #1 0xff1c27e0 in t_delete () from /usr/lib/libc.so.1
> #2 0xff1c23e4 in realfree () from /usr/lib/libc.so.1
> #3 0xff1c2cb8 in cleanfree () from /usr/lib/libc.so.1
> #4 0xff1c1dec in _malloc_unlocked () from /usr/lib/libc.so.1
> #5 0xff1c1ce0 in malloc () from /usr/lib/libc.so.1
> #6 0xff1b617c in calloc () from /usr/lib/libc.so.1
> #7 0x89c18 in pool_system_malloc (pool=0xb66f0, size=28) at
mempool-system.c:67
> #8 0x7fa58 in buffer_create_dynamic (pool=0xb66f0, init_size=20) at
buffer.c:109
> #9 0x56924 in index_transaction_init (t=0xcf090, ibox=0xd03a8, flags=0) at
index-transaction.c:13
> #10 0x38fa0 in mbox_transaction_begin (box=0xcf090, flags=0) at
mbox-transaction.c:16
> #11 0x71954 in mailbox_transaction_begin (box=0xcf090, flags=0) at
mail-storage.c:497
> #12 0x29f30 in imap_sync_init (client=0xc2760, box=0xd03a8, imap_flags=0,
flags=28) at imap-sync.c:47
> #13 0x2a534 in cmd_sync (cmd=0xc27a4, flags=28, imap_flags=0,
tagline=0x93120 "OK Fetch completed.") at imap-sync.c:243
> #14 0x1f470 in cmd_fetch_finish (ctx=0xc4a50) at cmd-fetch.c:103
> #15 0x1f66c in cmd_fetch (cmd=0xc27a4) at cmd-fetch.c:173
> #16 0x226b4 in cmd_uid (cmd=0xc27a4) at cmd-uid.c:19
> #17 0x23334 in client_handle_input (cmd=0xc27a4) at client.c:331
> #18 0x232b4 in client_handle_input (cmd=0xc27a4) at client.c:388
> #19 0x23430 in _client_input (context=0xc2760) at client.c:428
> #20 0x87924 in io_loop_handler_run (ioloop=0xbf838) at ioloop-poll.c:199
> #21 0x87184 in io_loop_run (ioloop=0xbf838) at ioloop.c:281
> #22 0x2c658 in main (argc=0, argv=0xffbef5ec, envp=0xffbef5fc) at
main.c:280
--
--+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-
Christopher Wakelin, c.d.wakelin at reading.ac.uk
IT Services Centre, The University of Reading, Tel: +44 (0)118 378 8439
Whiteknights, Reading, RG6 2AF, UK Fax: +44 (0)118 975 3094