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

Config server should send setFCV to all shards in parallel

    XMLWordPrintableJSON

Details

    • Icon: Improvement Improvement
    • Resolution: Unresolved
    • Icon: Major - P3 Major - P3
    • None
    • 4.5.1
    • Sharding
    • None
    • Cluster Scalability

    Description

      Currently, the config server sends setFCV to shards serially, meaning on large clusters where setFCV on each shard takes a long time, the overall setFCV across the cluster becomes extremely long.

      Instead, the config server could use the AsyncRequestsSender to send setFCV in parallel, similar to what is done here.

      Note that this will introduce a new possible cluster state where two shards are both in "upgrading" or "downgrading" and communicate with each other (via e.g., $out or chunk migration). Though some users turn the balancer off during setFCV, this is not intended to be a requirement, so we may want to add test cases to migrations_with_mixed_fcv.js.

      Attachments

        Activity

          People

            backlog-server-cluster-scalability Backlog - Cluster Scalability
            esha.maharishi@mongodb.com Esha Maharishi (Inactive)
            Votes:
            2 Vote for this issue
            Watchers:
            26 Start watching this issue

            Dates

              Created:
              Updated: