MailMate aborts during first run
Reported by Riot Nrrrd™ | January 25th, 2013 @ 10:37 PM
I just downloaded MailMate today and ran it for the first time.
It imported my 4 accounts from Apple's Mail.app and went off on its merry way filling in the index/header data for everything.
After about an hour or so it crashed via an abort(). I have 22,000+ e-mails in my home IMAP INBOX (dating back 20 years) so maybe that's why.
Looks like it crashed inside your OakDatabase library.
This is on a Mid-2010 Mac Pro 6-CPU 3.33GHz system running Mac OS 10.6.8. Crash dump follows ...
Process: MailMate [54510]
Path: /Applications/MailMate.app/Contents/MacOS/MailMate
Identifier: com.freron.MailMate
Version: 1.5.2 (3218)
Code Type: X86 (Native)
Parent Process: launchd [344]
Date/Time: 2013-01-25 14:32:06.913 -0800
OS Version: Mac OS X 10.6.8 (10K549)
Report Version: 6
Interval Since Last Report: 1067613 sec
Crashes Since Last Report: 1
Per-App Interval Since Last Report: 3625 sec
Per-App Crashes Since Last Report: 1
Anonymous UUID: 1F2141F2-4B35-4FA3-ABCB-FD0307BED42F
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Crashed Thread: 5 IMAP connection
Application Specific Information:
abort() called
...
Thread 5 Crashed: IMAP connection
0 libSystem.B.dylib 0x90317f75 usleep$NOCANCEL$UNIX2003 + 0
1 libSystem.B.dylib 0x903396f0 abort + 105
2 libstdc++.6.dylib 0x967c4fda __gnu_cxx::__verbose_terminate_handler() + 433
3 libstdc++.6.dylib 0x967c317a __cxxabiv1::__terminate(void (*)()) + 10
4 libstdc++.6.dylib 0x967c31ba __cxxabiv1::__unexpected(void (*)()) + 0
5 libstdc++.6.dylib 0x967c32b8 __gxx_exception_cleanup(_Unwind_Reason_Code, _Unwind_Exception*) + 0
6 libstdc++.6.dylib 0x967c3658 operator new(unsigned long) + 101
7 OakDatabase.dylib 0x002c3913 std::vector<char, std::allocator<char> >::_M_insert_aux(__gnu_cxx::__normal_iterator<char*, std::vector<char, std::allocator<char> > >, char const&) + 137
8 OakDatabase.dylib 0x002c3884 std::vector<char, std::allocator<char> >::push_back(char const&) + 62
9 OakProtocols.dylib 0x0065e854 int connection_t::read<std::back_insert_iterator<std::vector<char, std::allocator<char> > > >(std::back_insert_iterator<std::vector<char, std::allocator<char> > >, bool, int) + 592
10 OakProtocols.dylib 0x00659cb9 int connection_t::read_bytes<std::back_insert_iterator<std::vector<char, std::allocator<char> > > >(std::back_insert_iterator<std::vector<char, std::allocator<char> > >, int) + 101
11 OakProtocols.dylib 0x0064daca imap_t::read_response() + 286
12 OakProtocols.dylib 0x0064dbf9 imap_t::read_and_parse_responses(std::string const&) + 95
13 OakProtocols.dylib 0x0064c9db imap_t::write_command_and_read_responses(std::string const&, ...) + 83
14 OakProtocols.dylib 0x00645291 imap_t::fetch_messages() + 2845
15 OakProtocols.dylib 0x00641177 imap_t::run_action() + 883
16 OakProtocols.dylib 0x0063acf2 connection_t::run() + 314
17 OakProtocols.dylib 0x0063e69b connection_command_t::handle_request(std::tr1::shared_ptr<connection_t>) + 187
18 OakProtocols.dylib 0x0063fb46 oak::server_t<connection_command_t, std::tr1::shared_ptr<connection_t>, connection_command_t::result_t>::server_run() + 276
19 OakProtocols.dylib 0x0063e8b5 oak::server_t<connection_command_t, std::tr1::shared_ptr<connection_t>, connection_command_t::result_t>::server_t(unsigned long)::runner_t::server(void*) + 17
20 libSystem.B.dylib 0x9025d259 _pthread_start + 345
21 libSystem.B.dylib 0x9025d0de thread_start + 34
Comments and changes to this ticket
-
benny January 25th, 2013 @ 10:59 PM
22K messages is not a problem. The crash happens in the IMAP code fetching messages from the server. I am very interested if it's a reproducible problem. Is it?
On restart MailMate should ask you if you want to send the crash report to me. This is the best way to provide them since then I can more easily see if multiple users have the same problem.
And thanks for trying out MailMate.
-
Riot Nrrrd™ January 26th, 2013 @ 07:21 AM
Unfortunately it appears to be repeatable ... just aborted on me again at the same place.
-
benny January 26th, 2013 @ 07:45 AM
For me it's a good thing since it means the bug can be fixed if you are willing to help me track it down.
If you are willing to help me then this is what I want you to do: Take your accounts offline (in the Mailbox menu or the context sensitive menu) before it crashes. Then take them online one-by-one and wait for each one to fully synchronize (no spinners for the account). This way you'll find the account with the problem.
Then you can do the same for the mailboxes within the problematic account. While the account is offline you can use “Edit Subscriptions...” in the IMAP account editor (double-click the account under SOURCES) to unsubscribe (client side) to all mailboxes. Then take the account online. Now you can take mailboxes online one-by-one by subscribing to them in “Edit Subscriptions” (if you have many mailboxes then you may want to take half of them online in order to do a faster binary search).
If all goes well, you'll find a single IMAP mailbox triggering the bug. Let me know and then it may be best if I make a special debug version of MailMate to get more information.
-
Riot Nrrrd™ January 26th, 2013 @ 04:46 PM
I'm out of town all weekend but will give it a shot on Monday.
-
Riot Nrrrd™ February 4th, 2013 @ 01:01 PM
I decided to try out the newest build (1.5.2 (3239)) on my work MacBook Pro (running 10.8.2) instead.
That machine only has 1 account instead of the 4 I use at home.
It still crashes:
Process: MailMate [35784]
Path: /Applications/MailMate.app/Contents/MacOS/MailMate
Identifier: com.freron.MailMate
Version: 1.5.2 (3239)
Code Type: X86 (Native)
Parent Process: ??? [1]
User ID: 1074Date/Time: 2013-02-01 05:07:26.796 -0800
OS Version: Mac OS X 10.8.2 (12C60)
Report Version: 10Interval Since Last Report: 644828 sec
Crashes Since Last Report: 5
Per-App Interval Since Last Report: 17185 sec
Per-App Crashes Since Last Report: 1
Anonymous UUID: 52B79372-4BBA-2BDF-C83C-3131627DDC8ACrashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000Application Specific Information:
terminate called throwing an exception
abort() calledThread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libsystem_kernel.dylib 0x99112a6a pthread_kill + 10
1 libsystem_c.dylib 0x98f3dacf pthread_kill + 101
2 libsystem_c.dylib 0x98f744f8 abort + 168
3 libc++abi.dylib 0x9019680c abort_message + 151
4 libc++abi.dylib 0x90194275 default_terminate() + 34
5 libc++abi.dylib 0x901942b5 safe_handler_caller(void (*)()) + 13
6 libc++abi.dylib 0x9019431d std::terminate() + 23
7 libc++abi.dylib 0x90195412 __cxa_throw + 110
8 libstdc++.6.dylib 0x91bf72f6 operator new(unsigned long) + 127
9 libstdc++.6.dylib 0x91be3406 std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) + 92
10 libstdc++.6.dylib 0x91be3367 std::string::_Rep::_M_clone(std::allocator const&, unsigned long) + 39
11 libstdc++.6.dylib 0x91be3fe8 std::string::reserve(unsigned long) + 66
12 libstdc++.6.dylib 0x91be4235 std::string::push_back(char) + 45
13 com.freron.MailMate.OakMIME 0x00598646 void decode_base_64 > > >(char const*, char const*, std::back_insert_iterator > >) + 98
14 com.freron.MailMate.OakMIME 0x00592b11 bool mime_decode > > >(char const*, char const*, std::back_insert_iterator > >, std::string const&, mime_errors_handler_t&) + 141
15 com.freron.MailMate.OakMIME 0x00571037 body_part_t::decode_body() + 5785
16 com.freron.MailMate.OakMIME 0x005886d4 body_part_t::num_errors() + 82
17 com.freron.MailMate.OakMIME 0x005886c4 body_part_t::num_errors() + 66
18 com.freron.MailMate.OakMIME 0x005886c4 body_part_t::num_errors() + 66
19 com.freron.MailMate.OakMIME 0x005886c4 body_part_t::num_errors() + 66
20 OakDatabase.dylib 0x002a9706 database_t::add_body_part(body_part_t&, database::add_options_t, bool, int) + 754
21 OakDatabase.dylib 0x002a6f36 database_t::add_message(std::tr1::shared_ptr, database::add_options_t) + 886
22 OakDatabase.dylib 0x002f72ad imap_account_t::handle_data(std::tr1::shared_ptr) + 31051
23 OakProtocols.dylib 0x00638827 connection_command_t::handle_reply(connection_command_t::result_t const&) + 231
24 OakProtocols.dylib 0x0063994a oak::server_t, connection_command_t::result_t>::master_run() + 118
25 OakProtocols.dylib 0x006388dd cf::member_callback_t, connection_command_t::result_t> >::member_callback_t(void (oak::server_t, connection_command_t::result_t>::*)(), oak::server_t, connection_command_t::result_t>)::helper_t::wake_up(void) + 33
26 com.apple.CoreFoundation 0x9752466f __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 15[...]
I'll include the full backtrace/dump in an attachment/file this time.
-
benny February 4th, 2013 @ 01:23 PM
Thanks for the feedback. Using a different machine shows that the problem is likely to be a particular message (I assume the account is one of the same as used on your other machine). It would be very useful to me if we could find this message. I can make a debug version which creates a log file with a note for each message parsed. When it crashes, the end of that log file can tell us more about the message. Are you willing to do that for me?
-
benny February 4th, 2013 @ 04:48 PM
I went ahead and created a test version for you. Fetch it by holding down ⌥ when clicking “Check Now” in the Software Update preferences pane. You should get r3255.
Before launching MailMate you should do the following in the Terminal:
defaults write com.freron.MailMate MmDebugAddToDatabase -bool YES
With that preference enabled a log file is created on the Desktop named
MailMateAddToDatabase.log
. After the crash you should send that to me. You can do it privately: http://freron.com/contactTo see the last entry in the file then you can do this in the Terminal:
tail ~/Desktop/MailMateAddToDatabase.log
Maybe that can help you locate the email triggering MailMate to crash.
Thanks in advance!
-
Riot Nrrrd™ February 5th, 2013 @ 07:04 PM
I installed 3255 at work and so far it has not crashed. Cool! So maybe the bad message(s) is in another account. I am trying the final 3255 at home now.
-
Riot Nrrrd™ February 6th, 2013 @ 09:42 PM
OK. The latest MailMate (3255) crashed again, this time in my home e-mail account. :(
The last few messages in the MailMate debug log were:
[...] ---------------------------- From: MoneyTransfer2@westernunion.com To: [My e-mail address elided] Subject: Western Union Money Transfer(R) Confirmation Date: Mon, 3 Mar 2003 14:32:25 -0600 Message-ID: OF6E4F03BD.DF2F41FC-ON86256CDE.0070D4EE-86256CDE.0071186F@westernunion.com ---------------------------- From: [My e-mail address elided] To: bbkidcat@yahoo.com.ar Cc: [My e-mail address elided] Subject: Western Union Money Transfer(R) Confirmation (fwd) Date: Mon, 03 Mar 2003 12:48:21 -0800 Message-ID: 200303032048.MAA13687@[my machine name elided] ---------------------------- From: dego lozano <bbkidcat@yahoo.com.ar> To: [My e-mail address elided] Subject: Re: Western Union Money Transfer(R) Confirmation (fwd) Date: Tue, 4 Mar 2003 13:29:38 -0300 (ART) Message-ID: 20030304162938.35035.qmail@web14512.mail.yahoo.com ----------------------------
Does this mean this last message is the problematic one? Or the last one before the problematic one?
I can send the offending message file to you privately.
-
benny February 7th, 2013 @ 03:26 AM
Yes, please send it by email: http://freron.com/contact
It should be the last one. Maybe you should zip it first, for example, use “Compress ...” in the Finder after saving the email to the Desktop.
Thanks!
-
Riot Nrrrd™ April 4th, 2013 @ 12:58 AM
Hi Benny,
I see with 1.5.3 you are creeping slowly towards 1.6 and my inability to run MailMate at home :D
Is there anything in the latest version that might hopefully aid me in helping figure out why it keeps crashing on my home e-mail account?
You said you might be able to cook up a debug version once you got back from vacation ...
-
benny October 10th, 2013 @ 09:15 AM
- State changed from new to cantreproduce
Cleaning up old tickets. This ticket was never resolved (also not by email). I'll close it for now, but you are welcome to comment if this is still an issue. Last email from me is from April 4th, 2013.
Note that various bugs have been fixed since this ticket was created and the issue might have been resolved.
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile »
Mac OS X email client.