]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
dsync: Remove -D parameter that disables syncing mailbox renames
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Tue, 30 Nov 2021 16:02:14 +0000 (18:02 +0200)
committerTimo Sirainen <timo.sirainen@open-xchange.com>
Wed, 1 Dec 2021 13:20:01 +0000 (15:20 +0200)
It hasn't been necessary for a long time, and its behavior seems to be
broken.

src/doveadm/doveadm-dsync.c
src/doveadm/dsync/dsync-brain-mailbox-tree.c
src/doveadm/dsync/dsync-brain-private.h
src/doveadm/dsync/dsync-brain.c
src/doveadm/dsync/dsync-brain.h
src/doveadm/dsync/dsync-ibc-stream.c

index e0d4f89be967a1a269cf1559a7e846fc035d2777..2ef7cf4cd1b618a4178a2506c6208525072c0bc0 100644 (file)
@@ -105,7 +105,6 @@ struct dsync_cmd_context {
        bool reverse_backup:1;
        bool remote_user_prefix:1;
        bool no_mail_sync:1;
-       bool no_mailbox_renames:1;
        bool local_location_from_arg:1;
        bool replicator_notify:1;
        bool exited:1;
@@ -669,8 +668,6 @@ cmd_dsync_run(struct doveadm_mail_cmd_context *_ctx, struct mail_user *user)
                brain_flags |= DSYNC_BRAIN_FLAG_SYNC_VISIBLE_NAMESPACES;
        if (ctx->purge_remote)
                brain_flags |= DSYNC_BRAIN_FLAG_PURGE_REMOTE;
-       if (ctx->no_mailbox_renames)
-               brain_flags |= DSYNC_BRAIN_FLAG_NO_MAILBOX_RENAMES;
 
        if (ctx->backup) {
                if (ctx->reverse_backup)
@@ -1056,9 +1053,6 @@ cmd_mailbox_dsync_parse_arg(struct doveadm_mail_cmd_context *_ctx, int c)
        case 'd':
                ctx->default_replica_location = TRUE;
                break;
-       case 'D':
-               ctx->no_mailbox_renames = TRUE;
-               break;
        case 'E':
                /* dsync wrapper detection flag */
                legacy_dsync = TRUE;
@@ -1326,7 +1320,6 @@ DOVEADM_CMD_PARAM('O', "sync-flags", CMD_PARAM_STR, 0) \
 DOVEADM_CMD_PARAM('I', "sync-max-size", CMD_PARAM_STR, 0) \
 DOVEADM_CMD_PARAM('T', "timeout", CMD_PARAM_INT64, 0) \
 DOVEADM_CMD_PARAM('d', "default-destination", CMD_PARAM_BOOL, 0) \
-DOVEADM_CMD_PARAM('D', "disable-mailbox-renames", CMD_PARAM_BOOL, 0) \
 DOVEADM_CMD_PARAM('E', "legacy-dsync", CMD_PARAM_BOOL, 0) \
 DOVEADM_CMD_PARAM('\0', "destination", CMD_PARAM_ARRAY, CMD_PARAM_FLAG_POSITIONAL)
 
@@ -1340,7 +1333,7 @@ DOVEADM_CMD_PARAM('\0', "destination", CMD_PARAM_ARRAY, CMD_PARAM_FLAG_POSITIONA
 struct doveadm_cmd_ver2 doveadm_cmd_dsync_mirror = {
        .mail_cmd = cmd_dsync_alloc,
        .name = "sync",
-       .usage = "[-1fDPRU] "DSYNC_COMMON_USAGE,
+       .usage = "[-1fPRU] "DSYNC_COMMON_USAGE,
        .flags = CMD_FLAG_NO_UNORDERED_OPTIONS,
 DOVEADM_CMD_PARAMS_START
 DSYNC_COMMON_PARAMS
@@ -1350,7 +1343,7 @@ DOVEADM_CMD_PARAMS_END
 struct doveadm_cmd_ver2 doveadm_cmd_dsync_backup = {
        .mail_cmd = cmd_dsync_backup_alloc,
        .name = "backup",
-       .usage = "[-fDPRU] "DSYNC_COMMON_USAGE,
+       .usage = "[-fPRU] "DSYNC_COMMON_USAGE,
        .flags = CMD_FLAG_NO_UNORDERED_OPTIONS,
 DOVEADM_CMD_PARAMS_START
 DSYNC_COMMON_PARAMS
index b3e899bd69375bebcfa061d847724685023dcf61..0539571295dfc743ecbd1110ef4585b6da4d5d4b 100644 (file)
@@ -316,8 +316,7 @@ static void dsync_brain_mailbox_trees_sync(struct dsync_brain *brain)
        enum dsync_mailbox_trees_sync_type sync_type;
        enum dsync_mailbox_trees_sync_flags sync_flags =
                (brain->debug ? DSYNC_MAILBOX_TREES_SYNC_FLAG_DEBUG : 0) |
-               (brain->master_brain ? DSYNC_MAILBOX_TREES_SYNC_FLAG_MASTER_BRAIN : 0) |
-               (brain->no_mailbox_renames ? DSYNC_MAILBOX_TREES_SYNC_FLAG_NO_RENAMES : 0);
+               (brain->master_brain ? DSYNC_MAILBOX_TREES_SYNC_FLAG_MASTER_BRAIN : 0);
        int ret;
 
        if (brain->no_backup_overwrite)
index 1d407822d98a7329010f20b894b63413708b1c26..62bbac1f6fd2527b4cced3a7e605131f1ff22e7b 100644 (file)
@@ -118,7 +118,6 @@ struct dsync_brain {
        bool no_mail_sync:1;
        bool no_backup_overwrite:1;
        bool no_mail_prefetch:1;
-       bool no_mailbox_renames:1;
        bool changes_during_remote_sync:1;
        bool require_full_resync:1;
        bool verbose_proctitle:1;
index 17fecb8930d86652a383996485d427a6efc23bcd..153d7597ba9220a469233f65122b201c3a5c7914 100644 (file)
@@ -160,8 +160,6 @@ dsync_brain_set_flags(struct dsync_brain *brain, enum dsync_brain_flags flags)
                (flags & DSYNC_BRAIN_FLAG_NO_BACKUP_OVERWRITE) != 0;
        brain->no_mail_prefetch =
                (flags & DSYNC_BRAIN_FLAG_NO_MAIL_PREFETCH) != 0;
-       brain->no_mailbox_renames =
-               (flags & DSYNC_BRAIN_FLAG_NO_MAILBOX_RENAMES) != 0;
        brain->no_notify = (flags & DSYNC_BRAIN_FLAG_NO_NOTIFY) != 0;
        brain->empty_hdr_workaround = (flags & DSYNC_BRAIN_FLAG_EMPTY_HDR_WORKAROUND) != 0;
 }
index d2c16163c7f74e65087972af9624834cef4cd9ed..93b8e95ea9b7d6802fb1bf9771726f2a0f610d99 100644 (file)
@@ -28,9 +28,6 @@ enum dsync_brain_flags {
           only with pipe ibc. It's useful if most of the mails can be copied
           directly within filesystem without having to read them. */
        DSYNC_BRAIN_FLAG_NO_MAIL_PREFETCH       = 0x100,
-       /* Disable mailbox renaming logic. This is just a kludge that should
-          be removed once the renaming logic has no more bugs.. */
-       DSYNC_BRAIN_FLAG_NO_MAILBOX_RENAMES     = 0x200,
        /* Add MAILBOX_TRANSACTION_FLAG_NO_NOTIFY to transactions. */
        DSYNC_BRAIN_FLAG_NO_NOTIFY              = 0x400,
        /* Workaround missing Date/Message-ID headers */
index 7f734c08fcf5f8abd6ad696e877d6e77d4794690..f440b0654393698b562663ac15131774c35d371b 100644 (file)
@@ -76,7 +76,7 @@ static const struct {
          .optional_keys = "sync_ns_prefix sync_box sync_box_guid sync_type "
                "debug sync_visible_namespaces exclude_mailboxes  "
                "send_mail_requests backup_send backup_recv lock_timeout "
-               "no_mail_sync no_mailbox_renames no_backup_overwrite purge_remote "
+               "no_mail_sync no_backup_overwrite purge_remote "
                "no_notify sync_since_timestamp sync_max_size sync_flags sync_until_timestamp "
                "virtual_all_box empty_hdr_workaround import_commit_msgs_interval "
                "hashed_headers alt_char"
@@ -742,8 +742,6 @@ dsync_ibc_stream_send_handshake(struct dsync_ibc *_ibc,
                dsync_serializer_encode_add(encoder, "sync_visible_namespaces", "");
        if ((set->brain_flags & DSYNC_BRAIN_FLAG_NO_MAIL_SYNC) != 0)
                dsync_serializer_encode_add(encoder, "no_mail_sync", "");
-       if ((set->brain_flags & DSYNC_BRAIN_FLAG_NO_MAILBOX_RENAMES) != 0)
-               dsync_serializer_encode_add(encoder, "no_mailbox_renames", "");
        if ((set->brain_flags & DSYNC_BRAIN_FLAG_NO_BACKUP_OVERWRITE) != 0)
                dsync_serializer_encode_add(encoder, "no_backup_overwrite", "");
        if ((set->brain_flags & DSYNC_BRAIN_FLAG_PURGE_REMOTE) != 0)
@@ -886,8 +884,6 @@ dsync_ibc_stream_recv_handshake(struct dsync_ibc *_ibc,
                set->brain_flags |= DSYNC_BRAIN_FLAG_SYNC_VISIBLE_NAMESPACES;
        if (dsync_deserializer_decode_try(decoder, "no_mail_sync", &value))
                set->brain_flags |= DSYNC_BRAIN_FLAG_NO_MAIL_SYNC;
-       if (dsync_deserializer_decode_try(decoder, "no_mailbox_renames", &value))
-               set->brain_flags |= DSYNC_BRAIN_FLAG_NO_MAILBOX_RENAMES;
        if (dsync_deserializer_decode_try(decoder, "no_backup_overwrite", &value))
                set->brain_flags |= DSYNC_BRAIN_FLAG_NO_BACKUP_OVERWRITE;
        if (dsync_deserializer_decode_try(decoder, "purge_remote", &value))