]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
dsync: If full resync is requested, return empty state string.
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Mon, 25 Apr 2016 11:35:21 +0000 (14:35 +0300)
committerTimo Sirainen <timo.sirainen@dovecot.fi>
Mon, 25 Apr 2016 19:23:25 +0000 (22:23 +0300)
If the state is wrong, it's better to fully resync all the mailboxes rather
than just the one where a problem was noticed.

src/doveadm/dsync/dsync-brain.c

index 915d4f23f77955bf03cef13d1342889748827a60..3191708eadc257bdbfc77d9b1ed1d52f87a01f05 100644 (file)
@@ -705,6 +705,9 @@ void dsync_brain_get_state(struct dsync_brain *brain, string_t *output)
        const uint8_t *guid_p;
        uint8_t *guid;
 
+       if (brain->require_full_resync)
+               return;
+
        /* update mailbox states */
        array_foreach(&brain->remote_mailbox_states, new_state) {
                guid_p = new_state->mailbox_guid;