Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-29833

Balancer does not store or send a writeConcern for a recovered migration

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: Major - P3 Major - P3
    • None
    • 3.5.9
    • Sharding
    • None
    • Sharding
    • ALL
    • 0

    Description

      The moveChunk command currently supports writeConcern, on mongos, on the config server, and on shards. This writeConcern only really applies to the range deletion on the donor shard (whether the request should wait for the deletes to propagate to a certain number of nodes before returning, when waitForDelete is true).

      However, the document persisted for each ongoing migration in config.migrations does not contain the writeConcern option.

      So, if the config server primary fails over, the new config primary will attempt to recover and continue all migrations listed in config.migrations. The new config primary will not, however, pass along a writeConcern to the shard (even if the original request contained writeConcern).

      This is usually not a problem, since during a config failover, the mongos will retry the moveChunk request against the new config primary, which will cause the new config primary to send a separate moveChunk request to the donor shard (in addition to the one sent as part of recovering the migration). So, the mongos's retried moveChunk will contain the writeConcern.

      Attachments

        Activity

          People

            backlog-server-sharding [DO NOT USE] Backlog - Sharding Team
            esha.maharishi@mongodb.com Esha Maharishi (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: