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

addShard is not idempotent for retries

    XMLWordPrintableJSON

Details

    • Catalog and Routing
    • ALL
    • 14

    Description

      From a high level point of view, the addShard method triggered by a _configsvrAddShard command is executing the following steps:

      1) Check if the shard exists in config.shards (if yes, return).
      2) Write a new document representing the shard into config.shards.
      3) For each database on the shard, write a new document representing it into config.databases.

      If there is an interruption between steps 2 and 3, any addShard retry will not execute step 3 resulting in config.databases potentially presenting an inconsistent/incomplete state.

      Attachments

        Activity

          People

            backlog-server-catalog-and-routing Backlog - Catalog and Routing
            pierlauro.sciarelli@mongodb.com Pierlauro Sciarelli
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: