You are not alone!
On Wednesday, July 06, 2016 01:15:34 PM Remko Lodder wrote:
Dear list,
I have setup a master-master replication setup. My primairy MX's send email over on a DNS loadbalanced way, so DNS is doing some kind of round-robin way of sending mail to both master servers.
I found out, that on one of the two machines, the email synchronisation is heavily delayed. Lets assume server A receives a mail from the MX; it synchronises almost instantly with the other server.
Whenever server B receives the email, it could take up to several hours to synchronise the email, it seems that it is not detected prior.
I have been dealing with this for months. http://www.dovecot.org/list/dovecot/2016-March/103680.html
For a band aid I use this crontab entry. On the 2nd mail server.
*/15 * * * * root /usr/bin/doveadm sync -u "*" remote:mail1
However in doing this, and at other times during the sync. Something happens and kmail pulls in the email twice, and puts one in an odd state, grayed out in the GUI. I have to go do the directory and delete. Once read it has a T flag which other emails do not have. That becomes more common when I use the above, but otherwise happens on occasion.
It is also interesting to see, that the mailboxes on server A (Where users login to retrieve their email via webmail/clients) are significantly smaller then the mailboxes on server B. When investigating, it seems that "older" mailboxes (or storage rather since we use mdbox) are still there on server B, which already had been removed on server A.
I experience every bit of what you are describing. Also seems to be effected when email arrives on one server, but users are checking/pulling email from another. They never see the ones on the other, and can have emails arrive, be deleted, etc.
My personal mailbox was 170MB on server A, while it was still 2.5GB on server B. (which was around that size before cleaning up the mailsboxes).
I enabled debugging on the servers, and I see rather quick : "Replication requests" on server A, but when getting an email on server B, I do not see the request at all.
My servers are both running the same version, same configuration (utilizing puppet), both running on ZFS and FreeBSD. Where server B is more loaded in it's memory because of some bhyve VM's and the server A does not run any VM.
Does someone have any pointers on where to look?
I have been hoping its some issue that gets fixed in some new release. It seems there might have been some regressions there, as at times it seemed to have gotten better and other times worse.
I think it has something to do with full vs fast/quick syncing. I think the above command forces a full, and most times its doing a fast sync. There are not many settings to play with or adjust so seems to be something that requires addressing in the code itself unless some new settings are introduced.
-- William L. Thomson Jr. Obsidian-Studios, Inc. http://www.obsidian-studios.com