#1736 new
Hans Kuhn

EXISTS and EXPUNGE don't match for INBOX

Reported by Hans Kuhn | April 18th, 2017 @ 10:02 PM


My system: MailMate/5347 iMac13,2/x86_64/8/10.11.6 + Spamsieve

  • IMAP server is Zimbra 8.6
  • Other MUAs in use with this account are K-9 on Android and Thunderbird on Ubuntu.

When I sync the account in MailMate, I’m getting the dreaded:

Error: An EXISTS response decreased the number of messages. This should never happen.

The problematic mailbox is the INBOX.

Steps I have taken to try to fix the problem:

  • Reindex with 'zmprov rim user@mailbox start'
  • Removed the account in MailMate with 'Remove Source' and re-adding the account

I am a bit stumped about how to proceed from here.

Comments and changes to this ticket

  • benny

    benny April 19th, 2017 @ 09:06 PM

    The server behavior is a bit weird (and maybe buggy since it's strange that the problem is reproducible), but my first analysis is that the error message itself is actually a MailMate bug. I'll get back to you tomorrow when I've had time to look into the details.

  • benny

    benny April 20th, 2017 @ 11:04 AM

    Hold down ⌥ when clicking “Check Now” in the Software Update preferences pane. That should give you r5369. Let me know whether or not that makes a difference. Thanks in advance.

  • Hans Kuhn

    Hans Kuhn April 20th, 2017 @ 06:47 PM

    That fixed it! Thanks for the excellent service. More than glad to have paid for my license.

    If you don't mind, what was the pathology?

  • benny

    benny April 21st, 2017 @ 09:44 AM

    • State changed from “new” to “fixcommitted”


    Explanation: After connecting to an IMAP server then an email client can issue a command to SELECT a mailbox. When reusing a connection this means that an IMAP mailbox might already be selected. This is not usually a problem, but some times the server might have tried to tell the client about new or deleted messages at the same time as the client asks it to select a new mailbox. If not careful then the email client might interpret these new/deleted messages to be related to the newly selected mailbox. MailMate was careful about this, but it was too careful meaning that it would ignore deleted messages reported during the initial synchronization of a mailbox (the email client has to build a mapping between so-called UIDs and mailbox message numbers). And even worse, it would report this as a server issue.

    Usually, this would happen very rarely and then it would only happen once. It wouldn't happen again on “Retry”. For some reason, the Zimbra server persistently reports a single deleted message in your INBOX very shortly after telling MailMate about the existence of the same message. This is not strictly wrong, but it is very weird and it doesn't really make me want to trust Zimbra :) Interestingly, the message involved has a so-called internal date which indicates it is dated in 1970. This also does not make a lot of sense.

    But I'm happy it helped me fix a bug.

  • benny

    benny September 22nd, 2017 @ 12:54 PM

    • State changed from “fixcommitted” to “fixreleased”

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