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

Introduce uniform way to allow config servers and shard replica sets to start in non-cluster mode

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 3.2.19, 3.4.11, 3.6.3, 3.7.2
    • Affects Version/s: 3.2.0, 3.4.0, 3.6.0, 3.7.1
    • Component/s: Sharding
    • None
    • Fully Compatible
    • v3.6, v3.4, v3.2
    • Sharding 2018-01-29

      Starting with MongoDB version 3.2, all sharding database components (config server and shard replica sets) persist the fact that they belong to a sharded cluster. This information is stored in two places - the cluster identity document and the replica set configuration (config servers only).

      Once this information persisted, it is not possible to restart a config server or shard as an independent replica set, because startup will fail if --configsvr or --shardsvr are missing. This serves as a protection against customers inadvertently omitting startup parameters and misconfiguring their systems, but it also prevents the shard to be started up for maintenance (e.g., restore).

      In order to unify the non-cluster behaviour across all versions and unblock the Cloud team, on all versions starting from 3.2 we will introduce a new startup-only parameter on mongod called --setParameter skipShardingConfigurationChecks=true, which is incompatible with --configsvr or --shardsvr. The meaning of this flag is "I am planning to restore directly into the node, I know what I am doing and I don't want any sharding validations or background threads to run".

      This flag will make this and this checks conditional on the flag being enabled, so that replica set nodes will not fail to start or start as REMOVED.

            misha.tyulenev@mongodb.com Misha Tyulenev (Inactive)
            kaloian.manassiev@mongodb.com Kaloian Manassiev
            0 Vote for this issue
            14 Start watching this issue