-- Neil Wilson DcData support@dcdata.co.za support: 0860-1-LINUX http://www.dcdata.co.za Powered by Linux, driven by passion!
Timo Sirainen wrote:
These kinds of problems are a bit difficult to debug. One thing you could do is check with gdb where it dies:
ulimit -v 131072 MAIL=/home/user/Maildir gdb /usr/local/libexec/dovecot/imap b i_fatal_status run
x select "Saved mails.Legal.Company register" Does it crash here already? If not, do another command: Yes it crashed at this step. Below is the bt full output.
(gdb) bt full #0 i_fatal_status (status=83, format=0x46f858 "pool_system_malloc(): Out of memory") at failures.c:187 args = {{gp_offset = 5867792, fp_offset = 0, overflow_arg_area = 0x2aaaaad2d9cf, reg_save_area = 0x2ab2ab0008c0}} #1 0x000000000045dcd0 in pool_system_malloc (pool=<value optimized out>, size=<value optimized out>) at mempool-system.c:73 mem = <value optimized out> #2 0x0000000000459604 in i_malloc (size=<value optimized out>) at imem.c:9 No locals. #3 0x000000000043dec6 in mail_index_keywords_create_from_indexes (t=0x5990e0, keyword_indexes=0x7fffffffdfe0) at mail-index-transaction.c:905 k = <value optimized out> count = <value optimized out> #4 0x000000000041e779 in maildir_sync_index_finish (sync_ctx=0x598820, partial=0) at maildir-sync.c:1049 kw = (struct mail_keywords *) 0x7fffffffdfd0 mbox = (struct maildir_mailbox *) 0x594e20 view = (struct mail_index_view *) 0x598910 iter = (struct maildir_uidlist_iter_ctx *) 0x599380 trans = (struct mail_index_transaction *) 0x5990e0 hdr = (const struct mail_index_header *) 0x598990 rec = <value optimized out> seq = <value optimized out> uid = <value optimized out> uflags = <value optimized out> filename = <value optimized out> flags = <value optimized out> keywords = {buffer = 0x583800, element_size = 4} idx_keywords = {buffer = 0x5838f0, element_size = 4} uid_validity = <value optimized out> next_uid = 0 value = <value optimized out> old_new_sync_time = <value optimized out> ret = 0 full_rescan = 0 #5 0x000000000041eaaa in maildir_sync_context (ctx=0x5833e0, forced=<value optimized out>, sync_last_commit=<value optimized out>) at maildir-sync.c:1268 ret = 0 new_changed = 1 cur_changed = 1 full_rescan = 0 #6 0x000000000041ecbc in maildir_storage_sync_init (box=0x594e20, flags=MAILBOX_SYNC_FLAG_FULL_READ) at maildir-sync.c:1325 mbox = <value optimized out> ---Type <return> to continue, or q <return> to quit--- ctx = (struct maildir_sync_context *) 0x5833e0 ret = 0 #7 0x000000000044a187 in mailbox_sync_init (box=<value optimized out>, flags=<value optimized out>) at mail-storage.c:336 No locals. #8 0x0000000000419500 in imap_sync_nonselected (box=<value optimized out>, flags=<value optimized out>) at imap-sync.c:171 ctx = <value optimized out> sync_rec = {seq1 = 5820128, seq2 = 0, type = 5821688} status = {messages = 0, recent = 0, unseen = 0, uidvalidity = 0, uidnext = 5821568, first_unseen_seq = 0, keywords = 0x58d480} #9 0x000000000041286f in _cmd_select_full (cmd=0x58d4f8, readonly=0) at cmd-select.c:39 client = (struct client *) 0x58d480 storage = (struct mail_storage *) 0x58cee0 box = (struct mailbox *) 0x594e20 status = {messages = 5830872, recent = 0, unseen = 5821688, uidvalidity = 0, uidnext = 5821568, first_unseen_seq = 0, keywords = 0x58bdf0} mailbox = <value optimized out> #10 0x00000000004140b4 in _client_input (context=<value optimized out>) at client.c:334 client = (struct client *) 0x58d480 cmd = (struct client_command_context *) 0x58d4f8 #11 0x000000000045bbd3 in io_loop_handler_run (ioloop=0x58bda0) at ioloop-poll.c:184 ctx = (struct ioloop_handler_context *) 0x58bdf0 pollfd = <value optimized out> tv = {tv_sec = 9, tv_usec = 999314} io = (struct io *) 0x58d780 t_id = 2 msecs = <value optimized out> ret = 0 call = <value optimized out> #12 0x000000000045b12c in io_loop_run (ioloop=0x58bda0) at ioloop.c:230 No locals. #13 0x000000000041b0c6 in main (argc=<value optimized out>, argv=0x7fffffffe2d8, envp=0x7fffffffe2e8) at main.c:229 No locals. (gdb)
still contained debugging information (maybe run it with src/imap/imap instead in Dovecot's source directory where it's at least not stripped). Now run with src/imap/imap
(gdb) bt full #0 i_fatal_status (status=83, format=0x46f858 "pool_system_malloc(): Out of memory") at failures.c:187 args = {{gp_offset = 5867792, fp_offset = 0, overflow_arg_area = 0x2aaaaad2d9cf, reg_save_area = 0x2ab2ab0008c0}} #1 0x000000000045dcd0 in pool_system_malloc (pool=<value optimized out>, size=<value optimized out>) at mempool-system.c:73 mem = <value optimized out> #2 0x0000000000459604 in i_malloc (size=<value optimized out>) at imem.c:9 No locals. #3 0x000000000043dec6 in mail_index_keywords_create_from_indexes (t=0x5990e0, keyword_indexes=0x7fffffffdfd0) at mail-index-transaction.c:905 k = <value optimized out> count = <value optimized out> #4 0x000000000041e779 in maildir_sync_index_finish (sync_ctx=0x598820, partial=0) at maildir-sync.c:1049 kw = (struct mail_keywords *) 0x7fffffffdfc0 mbox = (struct maildir_mailbox *) 0x594e20 view = (struct mail_index_view *) 0x598910 iter = (struct maildir_uidlist_iter_ctx *) 0x599380 trans = (struct mail_index_transaction *) 0x5990e0 hdr = (const struct mail_index_header *) 0x598990 rec = <value optimized out> seq = <value optimized out> uid = <value optimized out> uflags = <value optimized out> filename = <value optimized out> flags = <value optimized out> keywords = {buffer = 0x583800, element_size = 4} idx_keywords = {buffer = 0x5838f0, element_size = 4} uid_validity = <value optimized out> next_uid = 0 value = <value optimized out> old_new_sync_time = <value optimized out> ret = 0 full_rescan = 0 #5 0x000000000041eaaa in maildir_sync_context (ctx=0x5833e0, forced=<value optimized out>, sync_last_commit=<value optimized out>) at maildir-sync.c:1268 ret = 0 new_changed = 1 cur_changed = 1 full_rescan = 0 #6 0x000000000041ecbc in maildir_storage_sync_init (box=0x594e20, flags=MAILBOX_SYNC_FLAG_FULL_READ) at maildir-sync.c:1325 mbox = <value optimized out> ---Type <return> to continue, or q <return> to quit--- ctx = (struct maildir_sync_context *) 0x5833e0 ret = 0 #7 0x000000000044a187 in mailbox_sync_init (box=<value optimized out>, flags=<value optimized out>) at mail-storage.c:336 No locals. #8 0x0000000000419500 in imap_sync_nonselected (box=<value optimized out>, flags=<value optimized out>) at imap-sync.c:171 ctx = <value optimized out> sync_rec = {seq1 = 5820128, seq2 = 0, type = 5821688} status = {messages = 0, recent = 0, unseen = 0, uidvalidity = 0, uidnext = 5821568, first_unseen_seq = 0, keywords = 0x58d480} #9 0x000000000041286f in _cmd_select_full (cmd=0x58d4f8, readonly=0) at cmd-select.c:39 client = (struct client *) 0x58d480 storage = (struct mail_storage *) 0x58cee0 box = (struct mailbox *) 0x594e20 status = {messages = 5830872, recent = 0, unseen = 5821688, uidvalidity = 0, uidnext = 5821568, first_unseen_seq = 0, keywords = 0x58bdf0} mailbox = <value optimized out> #10 0x00000000004140b4 in _client_input (context=<value optimized out>) at client.c:334 client = (struct client *) 0x58d480 cmd = (struct client_command_context *) 0x58d4f8 #11 0x000000000045bbd3 in io_loop_handler_run (ioloop=0x58bda0) at ioloop-poll.c:184 ctx = (struct ioloop_handler_context *) 0x58bdf0 pollfd = <value optimized out> tv = {tv_sec = 9, tv_usec = 999173} io = (struct io *) 0x58d780 t_id = 2 msecs = <value optimized out> ret = 0 call = <value optimized out> #12 0x000000000045b12c in io_loop_run (ioloop=0x58bda0) at ioloop.c:230 No locals. #13 0x000000000041b0c6 in main (argc=<value optimized out>, argv=0x7fffffffe2c8, envp=0x7fffffffe2d8) at main.c:229 No locals. (gdb)
-- This email and all contents are subject to the following disclaimer: http://www.dcdata.co.za/emaildisclaimer.html