#2729 ✓cantreproduce
Steve Dorner

Crashes during and after large inter-server move

Reported by Steve Dorner | January 9th, 2021 @ 05:36 PM

I am in the process of moving all my mail from iCloud to Google. I tried to move some 8400 messages from my iCloud INBOX to my Gmail INBOX on my Mojave Mac Mini. No doubt it was foolish to try to do it all at once, but oh well. After the transfer had progressed a while, Google threw off 3-4 errors about "unable to parse command". Then MailMate crashed.

I restarted MailMate, and it crashed again. And again. And again.

I took iCloud offline. Still crashed.

I took Google offline. No more crashes. Now, however, I no longer have access to my (now primary) Google mail on my Mini. Happily, MailMate on my Mojave MacBook Air is still functional, so the issue seems to be something with MailMate's state on my Mini.

I'm going to leave it like this for now, in case there is some information you want, and just use MailMate on my Air. If I don't hear from you, I will eventually try removing the Google account from MailMate on my Mini and then recreating it.

You've gotten a BUNCH of crashlogs from me this morning, but LMK if there is anything else you'd like me to send.

Comments and changes to this ticket

  • benny

    benny January 10th, 2021 @ 03:46 PM

    Sorry about the trouble! Which revision of MailMate are you running? Was it the same revision which crashed? Do you use a Contact Name in the Software Update preferences pane (or the General preferences pane in older releases)?

    I think it might be an issue that is solvable without rebuilding the database, but I first need to make sure I'm looking at your crash reports.

  • Steve Dorner

    Steve Dorner January 10th, 2021 @ 04:30 PM

    I use "Steve Dorner <REDACTED>" in the contact pane. I'm running Version 1.14 (5757), which was the one that crashed.

  • benny

    benny January 11th, 2021 @ 02:48 PM

    Hmm, I don't seem to have the crash reports. The last one is from December 4th (and this is a single one). (Maybe there's an issue with my crash reporter system.)

    In any case, let me know what this shows:

    ls -al ~/Library/Application\ Support/MailMate/Database.noindex/Sets
    
  • Steve Dorner

    Steve Dorner January 11th, 2021 @ 04:21 PM

    sdMini.local:01-07 7% ls -al ~/Library/Application\ Support/MailMate/Database.noindex/Sets
    total 4272 drwx------ 4 sdorner admin 128 Jan 11 08:02 . drwx------ 5 sdorner admin 160 Jan 11 08:02 .. -rw------- 1 sdorner admin 540396 Jan 11 08:02 Msgs.ids -rw------- 1 sdorner admin 1643240 Jan 11 08:02 Parts.ids

    I brought it back up this morning to see if I could get another crashlog. It ran fine with the Gmail account offline. I brought that online. The activity viewer was I think showing it continuing with the large server move. It stayed up for 2-3 minutes, and then crashed. I tried to paste the crashlog in here, but it's evidently too big.

    I relaunched it, got a notification that my crash information had been sent to you, and then it crashed within 30 seconds. I will send you both crashlogs via the feedback address.

    My machines are both experiencing occasional (1 per week or so) kernel panics, but this feels like a specific problem in MailMate; or perhaps this is MailMate exercising the Bad Thing that is lurking in my system.

  • Steve Dorner

    Steve Dorner January 21st, 2021 @ 04:25 PM

    I really needed MailMate back on my mini. I deleted the account and re-added it. It said something about 9K local messages would be lost; that was the remainder of the inter-server move, and I let it "delete" them.

    HOWEVER, it is currently uploading lots of messages, so I'm not convinced that it actually tossed all those local messages. It will be interesting to see if it crashes when this completes.

  • benny

    benny January 22nd, 2021 @ 04:11 PM

    • State changed from “new” to “cantreproduce”

    As our email correspondence likely indicated I was kind of out of ideas, but I'll review it again to see if I missed something.

    I hope you did not lose anything or now have a new issue with lots of duplicates. In the latter case, “Edit ▸ Select Duplicates” might be helpful.

  • Steve Dorner

    Steve Dorner January 22nd, 2021 @ 04:46 PM

    Thanks; I was unaware of Select Duplicates, that's awesome!

    After removing and re-adding the Google account, still crashing.

    I rebuilt the database from the local data. Still crashing.

    I rebuilt the database from the server. Still crashing.

    I'm contemplating some more drastic surgery; removing the account, quitting MailMate, then opening its files and mucking about in its brain; maybe removing ~/Library/MailMate/Messages.noindex/ ?

  • Steve Dorner

    Steve Dorner January 22nd, 2021 @ 04:47 PM

    Oops, markup ate "name-of-gmail-account" in angle brackets from my pathname above.

  • benny

    benny January 22nd, 2021 @ 05:16 PM

    Quick idea: You can try renaming the ~/Library/Application Support/MailMate folder to temporarily start over with a clean MailMate. Then add the Gmail account to see if it crashes in this “clean” state. You can rename back if needed.

    (Given that I've not seen this issue before I'm pretty sure it's a bug in r5757. It's likely that the public release wouldn't crash, but that doesn't help fix the bug.)

    Cutting edge release might not fix the main issue, but it does fix an issue with rebuilding database from cache: https://updates.mailmate-app.com/x86_64/archives/MailMate_r5761.tbz

    (Note that the cutting edge release does not currently support updating itself due to missing setup on the server.)

  • Steve Dorner

    Steve Dorner January 22nd, 2021 @ 05:19 PM

    I have tried going back to the public release, and it still crashed--but that was before all the rebuilding. MailMate (same version) continues to run fine on my Air with the same accounts. There's something I really really need in this latest release; I forget now what it is. 🤷🏻‍♂️

    I will try the fresh directory, thanks!

  • Steve Dorner

    Steve Dorner January 22nd, 2021 @ 07:35 PM

    Well, after a long time downloading a LOT of messages, it comes up and stays up on a fresh directory. I'm going to try removing just the one account's directory from the other folder, and see how that goes.

  • Steve Dorner

    Steve Dorner January 22nd, 2021 @ 07:48 PM

    Not well. 🤣 It crashed pretty quickly, so I'm guessing it didn't like me just removing the one folder.

    Instead, I made it a fresh new folder, copied all the plist files over, and am letting it chew on both my big accounts at the same time.

  • benny

    benny January 22nd, 2021 @ 07:51 PM

    You might already have seen this, but that is not possible. In fact, I'm not sure what would happen. It's all or nothing I'm afraid.

    The best you can do is to delete everything but the main *.plist files. That way you keep the settings and all of the accounts “just” need to re-fetch all emails :-|

    At least I now know that the problem is somehow related to the state of the database...

  • benny

    benny January 22nd, 2021 @ 08:17 PM

    I see you figured it out before I committed the reply :)

    (The database has a “monolithic” design. I don't think I realized that the average MailMate user would have a lot of accounts and that it would be quite important to make single account deletion/creation/rebuilding efficient.)

  • Steve Dorner

    Steve Dorner January 22nd, 2021 @ 09:11 PM

    Well...

    I did that and it still crashed. Just copied over the plist files from the folder and let it go.

    So next thing I'm going to do is copy of the plist files from my Air, where things are stable, and see how THAT goes.

  • benny

    benny January 22nd, 2021 @ 09:30 PM

    Argh, sorry to hear that. The Air is also using r5757?

    Another approach would be to see if the issue is somehow related to a specific mailbox within the Gmail account. You can take a subset of IMAP mailboxes offline after adding an account, e.g., only synchronizing the INBOX at first. Then take the mailboxes online in smaller batches (depending on how many you have).

    (I really should try to make a debug release providing more output around the crash point, but I have some other issues I have to attend to first.)

  • benny

    benny January 22nd, 2021 @ 09:35 PM

    Also, is the Air running the same macOS version?

  • Steve Dorner

    Steve Dorner January 22nd, 2021 @ 11:07 PM

    Yes, the Air and the Mini are both the same OS & MailMate. The plist files from the Air seem to work fine on the Mini, so problem "solved." I did keep copies of everything if you want to try something in future.

  • benny

    benny January 23rd, 2021 @ 09:54 AM

    Thanks! Have you kept an entire MailMate folder which reproduces the issue?

    Could you compare the Sources.plist file to see what kind of differences exist between the two setups. I'm thinking maybe the issue is related to the handling of [Gmail]/All Mail (which is a nightmare, but it should of course not crash).

  • Steve Dorner

    Steve Dorner January 23rd, 2021 @ 06:21 PM

    Yes, I have the full folder. Also, I did change some tags before all this happened, and there was some whining from gmail about an invalid "ToDo" tag that made little sense to me.
    Here's a diff of both Sources and Tags, for what they're worth:

    sdMini.local:~ 1% diff /Users/sdorner/Library/Application\ Support/MailMate/Sources.plist /Users/sdorner/Library/Application\ Support/MailMate-old/Sources.plist 
    2c2
    <       {   MRUPort = "143";
    ---
    >       {   MRUPort = "993";
    9,11c9,11
    <           idle_minutes = "1";
    <           name = "Francine";
    <           port = "143";
    ---
    >           idle_minutes = "3";
    >           name = "ACT-SO";
    >           port = "993";
    13,14c13,14
    <           serverURL = "imap://f.maxwell%40sandiegonaacp.org@sandiegonaacp.org";
    <           smtp = "smtp://f.maxwell%40sandiegonaacp.org@sandiegonaacp.org";
    ---
    >           serverURL = "imap://actso%40sandiegonaacp.org@sandiegonaacp.org";
    >           smtp = "smtp://actso%40sandiegonaacp.org@sandiegonaacp.org";
    23c23
    <           idle_minutes = 8;
    ---
    >           idle_minutes = 5;
    25c25
    <           port = "993";
    ---
    >           port = "143";
    31,39c31,40
    <           clientUnsubscribedMailboxNames = ( "[Gmail]/All Mail", "[Gmail]/Important", "[Gmail]/Starred" );
    <           derivedAccountHostname = ":true";
    <           derivedAccountUsername = ":true";
    <           derivedSMTPHostname = ":true";
    <           derivedSMTPUsername = ":true";
    <           idle_minutes = 6;
    <           name = "Personal GMail";
    <           "oauth2" = ":true";
    <           requireSSL = ":true";
    ---
    >           clientUnsubscribedMailboxNames = ( "Bill", "Info", "Kill", "NAACPVIP", "Secy", "ToDo", "VIP", "[Gmail]/All Mail", "[Gmail]/Important",
    >               "[Gmail]/Starred"
    >           );
    >           derivedAccountHostname = :true;
    >           derivedAccountUsername = :true;
    >           derivedSMTPHostname = :true;
    >           derivedSMTPUsername = :true;
    >           name = "inlaetabilis@gmail.com";
    >           port = "";
    >           portSelection = "automatic";
    50c51
    <           idle_minutes = "2";
    ---
    >           idle_minutes = 5;
    59,60c60,61
    <           derivedAccountHostname = ":true";
    <           derivedAccountUsername = ":true";
    ---
    >           derivedAccountHostname = ":false";
    >           derivedAccountUsername = ":false";
    63,67c64,69
    <           idle_minutes = 5;
    <           name = "Mac.com";
    <           requireSSL = ":true";
    <           serverURL = "imap://sdorner%40mac.com@imap.mail.me.com";
    <           smtp = "smtp://sdorner%40mac.com@smtp.mail.me.com";
    ---
    >           idle_minutes = "15";
    >           name = "iCloud";
    >           port = "";
    >           portSelection = "automatic";
    >           serverURL = "imap://sdorner@p57-imap.mail.me.com";
    >           smtp = "smtp://sdorner@p57-smtp.mail.me.com";
    69,70c71,74
    <       {   MRUPort = "143";
    <           clientUnsubscribedMailboxNames = ( "INBOX/Archive", "INBOX", "INBOX/Junk", "INBOX/spam" );
    ---
    >       {   MRUPort = "993";
    >           clientUnsubscribedMailboxNames = ( "INBOX/spam", "INBOX/Archive", "INBOX/Sent Messages", "INBOX/Junk", "INBOX/Drafts",
    >               "INBOX/Trash"
    >           );
    76c80
    <           idle_minutes = 14;
    ---
    >           idle_minutes = "8";
    78c82
    <           port = "993";
    ---
    >           port = "143";
    sdMini.local:~ 2% diff /Users/sdorner/Library/Application\ Support/MailMate/Tags.plist /Users/sdorner/Library/Application\ Support/MailMate-old/Tags.plist 
    25c25
    <           <string>Secy</string>
    ---
    >           <string>Bill</string>
    27c27
    <           <string>Secy</string>
    ---
    >           <string>Bill</string>
    29c29
    <           <string>🖋</string>
    ---
    >           <string>💸</string>
    33c33
    <           <string>Info</string>
    ---
    >           <string>Secy</string>
    35,37c35
    <           <string>Info</string>
    <           <key>serverKeyword</key>
    <           <string>Info</string>
    ---
    >           <string>Secy</string>
    39c37
    <           <string>ℹ</string>
    ---
    >           <string>🖋</string>
    53c51
    <           <string>toodoo</string>
    ---
    >           <string>ToDo</string>
    57c55
    <           <string>🔧</string>
    ---
    >           <string>🔨</string>
    61c59
    <           <string>Bill</string>
    ---
    >           <string>Info</string>
    63,65c61
    <           <string>Bill</string>
    <           <key>shortDisplayName</key>
    <           <string>💸</string>
    ---
    >           <string>Info</string>
    sdMini.local:~ 3%
    

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

Pages