On 21.2.2013, at 22.12, Michael Grimm trashcan@odo.in-berlin.de wrote:
I am running v2.2beta1 for almost a week now (handful of users, ~1000 mails/day). And yes, I can confirm that replication works ...
Please test and report any bugs found!
... there is only a "feature request" left:
I did run a lot of stress tests as mentioned before (simultaneously injected local mail).
Whenever I do run those tests with a delay of 1 second between every injection, I do observe, that not all mails injected become visible in my MUAs (Mail.app and Roundcube), immediately. All "get new mail" functionality or MUA restarts fails to fetch those missing messages from both servers.
But, if I do restart any one of both dovecot servers involved, those remaining missing messages are fetched instantaneously. It seems to me, as if those missing messages were kept in the "replicator queue" and not delivered to the partner server, and as if that queue became flushed during restart. After restart all injected and replicated messages are accessible by the MUAs.
Possibly a bug, see if it still happens with beta2.
I never waited longer then 10 minutes before restarting dovecot, thus I do not know if I didn't wait long enough. But I can say that an additionally injected local mail shows up in both MUAs but doesn't become replicated.
Thus, if I am not mistaken that something like a "flushing" really takes place, I wonder if there is a "doveadm flush replicator-queue" functionality is available already (that I might have over-seen), and if not, would that be a big deal to implement?
Well, you can sync a user with e.g.: doveadm sync -d -l 30 -u user@domain
or with -A parameter to sync everyone. And with -f parameter to do a full sync if needed. The -l 30 parameter adds locking so two dsyncs won't run at the same time for the user.