#417 ✓resolved
Keith Corbett

MailMate hangs for 15 minutes, locks Mac GUI

Reported by Keith Corbett | July 29th, 2013 @ 06:34 PM

Several times each day MailMate hangs up with SBOD, windows won't show, not accepting mouse or keyboard input. Soon after this starts, other apps also hang, usually Skype, Fantastical, Chrome, Calendar, sometimes others.

Eventually the dock becomes unresponsive and gestures to move screens stop working. After 15-20 minutes all windows wake up.

I've seen this in the past 2 weeks on 2 MacBook Pros running latest Mountain Lion.

On one Mac I had to uninstall VMWare (and use VirtualBox instead) because my guest OS was crashing every time.

I have ~6 sources online at any one time, and I've created a dozen or so smart mailboxes. Otherwise my usage is pretty vanilla. I don't usually have MailMate open on both Macs; I only brought the 2nd one into work in hopes of keeping more apps running at once.

[not sure if this is related]

MailMate sometimes crash when I Quit it. Here's the crash report from the last time:

Process: MailMate [566]
Path: /Applications/MailMate.app/Contents/MacOS/MailMate
Identifier: com.freron.MailMate
Version: 1.6 (3549)
Code Type: X86 (Native)
Parent Process: launchd [255]
User ID: 501

Date/Time: 2013-07-29 14:40:57.256 -0400
OS Version: Mac OS X 10.8.4 (12E55)
Report Version: 10

Interval Since Last Report: 78348 sec
Crashes Since Last Report: 1
Per-App Interval Since Last Report: 18648 sec
Per-App Crashes Since Last Report: 1
Anonymous UUID: 7E40DE59-E4ED-58DB-412B-F1442FECC5FB

Crashed Thread: 0 Dispatch queue: com.apple.main-thread

Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000

Application Specific Information:
abort() called

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libsystem_kernel.dylib 0x91019a6a __pthread_kill + 10
1 libsystem_c.dylib 0x94252b2f pthread_kill + 101
2 libsystem_c.dylib 0x942894ec abort + 168
3 Controller.dylib 0x001f1e4d -[MmMailboxManager removeMailboxes:recursively:] + 1576
4 Controller.dylib 0x001f1ea0 -[MmMailboxManager removeMailboxes:] + 73
5 Controller.dylib 0x001e499a -[MmMailbox safeRemoveMailboxes:] + 1071
6 Controller.dylib 0x001e4c66 -[MmMailbox removePartitioningMailboxes] + 687
7 Controller.dylib 0x001e4aa3 -[MmMailbox removePartitioningMailboxes] + 236
8 Controller.dylib 0x001e4d49 -[MmMailbox setPartitioningHeader:] + 198
9 Controller.dylib 0x001e1256 -[MmMailbox exitCleanup] + 93
10 Controller.dylib 0x001e12c9 -[MmMailbox exitCleanup] + 208
11 Controller.dylib 0x001e12c9 -[MmMailbox exitCleanup] + 208
12 Controller.dylib 0x001f106b -[MmMailboxManager exitCleanup] + 40
13 com.freron.MailMate 0x00007443 -[ApplicationDelegate applicationWillTerminate:] + 836
14 com.apple.Foundation 0x993b3e52 __57-[NSNotificationCenter addObserver:selector:name:object:]_block_invoke_0 + 49
15 com.apple.CoreFoundation 0x98410851 ___CFXNotificationPost_block_invoke_0 + 257
16 com.apple.CoreFoundation 0x9835be8a _CFXNotificationPost + 2794
17 com.apple.Foundation 0x9939c988 -[NSNotificationCenter postNotificationName:object:userInfo:] + 92
18 com.apple.Foundation 0x993ac727 -[NSNotificationCenter postNotificationName:object:] + 55
19 com.apple.AppKit 0x99c88d39 -[NSApplication terminate:] + 2420
20 libobjc.A.dylib 0x93f2d5d3 -[NSObject performSelector:withObject:] + 70
21 com.apple.AppKit 0x99b4bad2 -[NSApplication sendAction:to:from:] + 436
22 com.apple.AppKit 0x99c882fc -[NSMenuItem _corePerformAction] + 529
23 com.apple.AppKit 0x99c87f8b -[NSCarbonMenuImpl performActionWithHighlightingForItemAtIndex:] + 163
24 com.apple.AppKit 0x99c87614 -[NSMenu _performActionWithHighlightingForItemAtIndex:sendAccessibilityNotification:] + 79
25 com.apple.AppKit 0x9996802a -[NSMenu performActionForItemAtIndex:] + 65
26 com.apple.AppKit 0x99967fdf -[NSMenu _internalPerformActionForItemAtIndex:] + 45
27 com.apple.AppKit 0x99967faa -[NSMenuItem _internalPerformActionThroughMenuIfPossible] + 106
28 com.apple.AppKit 0x99967e29 -[NSCarbonMenuImpl _carbonCommandProcessEvent:handlerCallRef:] + 162
29 com.apple.AppKit 0x99c806ee NSSLMMenuEventHandler + 454
30 com.apple.HIToolbox 0x92a6e9bb _InvokeEventHandlerUPP(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*, long (*)(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*)) + 36
31 com.apple.HIToolbox 0x928f6394 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 1343
32 com.apple.HIToolbox 0x928f5780 SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*) + 430
33 com.apple.HIToolbox 0x92909655 SendEventToEventTarget + 88
34 com.apple.HIToolbox 0x92a6e86a SendHICommandEvent(unsigned long, HICommand const*, unsigned long, unsigned long, unsigned char, void const*, OpaqueEventTargetRef*, OpaqueEventTargetRef*, OpaqueEventRef**) + 498
35 com.apple.HIToolbox 0x928e5984 SendMenuCommandWithContextAndModifiers + 70
36 com.apple.HIToolbox 0x928e5931 SendMenuItemSelectedEvent + 268
37 com.apple.HIToolbox 0x928e57b6 FinishMenuSelection(SelectionData*, MenuResult*, MenuResult*) + 134
38 com.apple.HIToolbox 0x92abae7e MenuSelectCore(MenuData*, Point, double, unsigned long, OpaqueMenuRef**, unsigned short*) + 623
39 com.apple.HIToolbox 0x928c6132 _HandleMenuSelection2 + 633
40 com.apple.HIToolbox 0x928c5eaf _HandleMenuSelection + 53
41 com.apple.AppKit 0x99b3935a _NSHandleCarbonMenuEvent + 309
42 com.apple.AppKit 0x99a5ffdf _DPSNextEvent + 2425
43 com.apple.AppKit 0x99a5f16c -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 119
44 com.apple.AppKit 0x99a555cc -[NSApplication run] + 855
45 com.apple.AppKit 0x999f85f6 NSApplicationMain + 1053
46 com.freron.MailMate 0x0001e2ad main + 677
47 com.freron.MailMate 0x000031d5 start + 53

...

Comments and changes to this ticket

  • benny

    benny July 29th, 2013 @ 07:23 PM

    Other applications hanging is a sign that you are low on memory. You can use /Applications/Utilities/Activity Monitor to see which applications use the most memory. It might be MailMate if you have a large collection of emails or if you have triggered some bug in MailMate which leaks memory.

    How much memory do you have in the machines?

    How many messages do you have in “All Messages”?

    Note that during the initial import of accounts MailMate may use more memory while building the database indexes. Are the accounts fully synchronized (no spinners)?

  • Keith Corbett

    Keith Corbett July 30th, 2013 @ 10:03 PM

    Each Mac has 8Gb RAM.

    All Messages contains about 22K messages total.

    Accounts are fully synchronized most of the time, although sometimes one will spin for a while (a few minutes).

    Top memory processes are (according to Activity Monitor)

    0 kernel_task root 1.1 87 684.4 MB Intel (64 bit)
    382 arqcommitter root 0.0 7 658.6 MB Intel (64 bit)
    392 Google Chrome kmc 0.6 32 259.1 MB Intel
    1653 MailMate kmc 0.0 34 208.9 MB Intel

    I've disabled Arq backups on that Mac to see if that helps. The other one is not running Arq; it shows kernel_task, Chrome, and MailMate at top.

  • benny

    benny July 31st, 2013 @ 05:49 AM

    Thanks for the details. 22K messages should certainly not be a problem, the memory usage of MailMate is not extreme, and it sounds like your accounts are fully synchronized.

    In the Activity Monitor you should also be able to see if your machine is low on memory, but based on what your data I am guessing this is not the problem (unless arqcommitter or some other application periodically uses a lot more memory).

    If it was a general problem with MailMate then I would think I had more reports about it, but since you have tried 2 machines then it kind of rules out a hardware issue. So, I'm not going to rule out a MailMate bug, but then I need more information. When MailMate starts hanging could you try using the Activity Monitor to “Sample Process”? That should generate a report which you can send to me.

    (The crash report, by the way, is not related to your problem.)

  • Keith Corbett

    Keith Corbett July 31st, 2013 @ 08:24 PM

    Here's output from Sample Process soon after MailMate hung today, and before other apps (Chrome, Skype, Finder) also stopped responding. Note the arqcommitter process was not running. Next I'll try running without Chrome.

  • benny

    benny August 1st, 2013 @ 12:39 PM

    Thanks for the output. It appears MailMate hangs in a system call writing data to disk. This is an unknown problem and I have no idea what could trigger it if it's not some kind of hardware problem (corrupt harddisk).

    I think the only way to analyze this in more details is to make a debug version for you which provides more information about what is (attempted to be) written. Contact me by email if you want to go down this path with me (use the “Help ▸ Send Feedback” menu item).

  • benny

    benny October 10th, 2013 @ 11:34 AM

    • State changed from “new” to “cantreproduce”

    I'm cleaning up old tickets. I sent you an email August 13th, but I don't think I received a reply.

    Let me know if you have additional information.

    To open the email using the Terminal:

    open "message://%3cF7640A66-1720-4860-A27C-5D1897737063@freron.com%3e"
    
  • benny

    benny February 25th, 2014 @ 10:40 AM

    • State changed from “cantreproduce” to “resolved”

    Another user has helped track down the reason for this issue. It is related to, e.g., a virus scanner examining every file closed by MailMate. In this case, it was Avast, but it could be other such applications as well.

    MailMate has a large set of database index files and some of them can grow quite big. Most of the time MailMate only appends data to these files (for efficiency), but even if MailMate only adds a few bytes to a file then Avast scans the entire file when it's closed. This is, of course, very inefficient.

    Avast (and probably also similar applications) can be told to skip certain folders. This is the folder that should be skipped:

    ~/Library/Application Support/MailMate/Database.noindex
    

    Note that Avast is still going to scan emails and attachments. The index files have no content that is not present elsewhere.

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.

New-ticket Create new ticket

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.

Shared Ticket Bins

People watching this ticket

Attachments

Referenced by

Pages