History log of /dovecot/src/doveadm/dsync/dsync-mailbox.h
Revision Date Author Comments Expand
c864fdd520b0c3f10a4b9bc5373368f4ae8faaff 28-Dec-2017 Timo Sirainen <timo.sirainen@dovecot.fi>

dsync: Add per-mailbox sync lock that is always used. Both importing and exporting gets the lock before they even sync the mailbox. The lock is kept until the import/export finishes. This guarantees that no matter how dsync is run, two dsyncs can't be working on the same mailbox at the same time. This lock is in addition to the optional per-user lock enabled by the -l parameter. If the -l parameter is used, the same lock timeout is used for the per-mailbox lock. Otherwise 30s timeout is used. This should help to avoid email duplication when replication is enabled for public namespaces, and maybe in some other rare situations as well.

280bc7d8b07490dfa5cf0fc20aee8e9e2d15aa99 04-Sep-2017 Aki Tuomi <aki.tuomi@dovecot.fi>

dsync: Ignore missing remote mailbox when doing unidirectional sync If there are some folders on remote system that are being ignored by remote brain, do not error out.

d1e843e77f4760e303c53d9fce10123fc8d230a1 17-Nov-2013 Timo Sirainen <tss@iki.fi>

dsync: Support syncing storages with 128bit GUIDs <-> string GUIDs.

14f6fe5d6c4834f273ca573c23c0659a93123363 20-May-2013 Timo Sirainen <tss@iki.fi>

dsync: Don't try to sync with GUIDs if we can't set them on the needed side. With two-way syncing both sides need to have writable GUIDs. With one-way syncing only the writing side needs to have writable GUIDs.

41e51b972f02e8b16c19fab9160294ea0a07c343 19-Mar-2013 Timo Sirainen <tss@iki.fi>

lib-storage: Mailbox attributes can now be accessed via istreams. The idea is to use istreams for larger values.

55d33f807765482eb47374aaaced1fe714e0b256 14-Mar-2013 Timo Sirainen <tss@iki.fi>

dsync: Added support for syncing mailbox attributes.

979d89c147520f2934c14c31aeb9310fd2d62a46 10-Feb-2013 Timo Sirainen <tss@iki.fi>

dsync: Automatically figure out which mailboxes can sync with message GUIDs.

6abf66a3731d52889517bd644595c540e3a9b3ec 04-Jan-2013 Timo Sirainen <tss@iki.fi>

dsync: Use private modseqs to support syncing private flags in shared mailboxes.

7bd5b1c64cc987715bdaf8cc4907c3c37d5d7b29 22-May-2012 Timo Sirainen <tss@iki.fi>

Initial version of dsync rewrite. * doveadm backup not implemented at all yet * syncing mailbox renames is somewhat broken (at least renaming \noselect mailboxes) * saving/restoring "state" is implemented by dsync brain, but not by doveadm. this should be easy to do, just need to figure out how the replication code wants it.

/dovecot/src/doveadm/doveadm-settings.c Makefile.am doveadm-dsync.c dsync-brain-mailbox-tree-sync.c dsync-brain-mailbox-tree.c dsync-brain-mailbox.c dsync-brain-mails.c dsync-brain-msgs-new.c dsync-brain-msgs.c dsync-brain-private.h dsync-brain.c dsync-brain.h dsync-data.c dsync-data.h dsync-deserializer.c dsync-deserializer.h dsync-mail.c dsync-mail.h dsync-mailbox-export.c dsync-mailbox-export.h dsync-mailbox-import.c dsync-mailbox-import.h dsync-mailbox-state-export.h dsync-mailbox-state.c dsync-mailbox-state.h dsync-mailbox-tree-fill.c dsync-mailbox-tree-private.h dsync-mailbox-tree-sync.c dsync-mailbox-tree.c dsync-mailbox-tree.h dsync-mailbox.h dsync-proxy-client.c dsync-proxy-server-cmd.c dsync-proxy-server.c dsync-proxy-server.h dsync-proxy.c dsync-proxy.h dsync-serializer.c dsync-serializer.h dsync-slave-io.c dsync-slave-pipe.c dsync-slave-private.h dsync-slave.c dsync-slave.h dsync-transaction-log-scan.c dsync-transaction-log-scan.h dsync-worker-local.c dsync-worker-private.h dsync-worker.c dsync-worker.h test-dsync-brain-msgs.c test-dsync-brain.c test-dsync-common.c test-dsync-common.h test-dsync-proxy-server-cmd.c test-dsync-proxy.c test-dsync-worker.c test-dsync-worker.h