Hi all,
On 2005-10-27, Timo Sirainen tss@iki.fi wrote:
[1
] On Sat, 2005-10-22 at 18:14 -0400, Sergey A. Lipnevich wrote: With 1.0.alpha3, I'm still seeing an "Out of memory" error with one Apple Mail user (but the user says everything works just fine), so we're planning to upgrade to 1.0.alpha4 and take it from there.
Well, I'm not sure. I suppose it could have happened to you because of it, if you really had been using epoll. If it still happens, a gdb backtrace really would be helpful in fixing it :)
I have a backtrace on 1.0.alpha4, amd64, 1 CPU, dovecot compiled with gcc 4.0. I was getting the error with Wanderlust, getting the status of some (not all) mailboxes.
Breakpoint 1, i_fatal_status (status=83, format=0x472bc0 "pool_system_malloc(): Out of memory") at failures.c:187 187 { (gdb) bt #0 i_fatal_status (status=83, format=0x472bc0 "pool_system_malloc(): Out of memory") at failures.c:187 #1 0x000000000046053e in pool_system_malloc (pool=Variable "pool" is not available. ) at mempool-system.c:73 #2 0x000000000043ecb6 in mail_index_keywords_create_from_indexes (t=0x599660, keyword_indexes=0x7fbffff7a0) at mail-index-transaction.c:905 #3 0x000000000041f1e7 in maildir_sync_index_finish (sync_ctx=0x597db0, partial=0) at maildir-sync.c:1049 #4 0x000000000041f6dd in maildir_sync_context (ctx=0x586358, forced=Variable "forced" is not available. ) at maildir-sync.c:1268 #5 0x000000000041f933 in maildir_storage_sync_init (box=0x59b680, flags=0) at maildir-sync.c:1325 #6 0x000000000041a000 in imap_sync_nonselected (box=Variable "box" is not available. ) at imap-sync.c:177 #7 0x0000000000413022 in cmd_status (cmd=0x590468) at cmd-status.c:68 #8 0x0000000000414319 in _client_input (context=Variable "context" is not available. ) at client.c:338 #9 0x000000000045e4a6 in io_loop_handler_run (ioloop=0x58ec70) at ioloop-poll.c:190 #10 0x000000000045d9dd in io_loop_run (ioloop=0x58ec70) at ioloop.c:230 #11 0x000000000041b841 in main (argc=Variable "argc" is not available. ) at main.c:232
Oh, and one more thing: The dying process leaves a .lock file behind, dovecot-uidlist.lock. It causes all later processes to loop endlessly, trying to acquire the lock. I thought processes should clean up after themselves when they croak. (-:
Thanks,
Andreas Fuchs, asf@boinkor.net, asf@jabber.at, antifuchs