-
Type:
Investigation
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Tools and Replicator
-
14
Introduces a new command to begin the demotion of a sharded cluster to a replica set.
Description of Linked Ticket
Summary
Introduce a new state for sharded clusters in which direct connections and sharded connections can coexist safely. Additionally, implement the transition into and out of this state during the promotion to/demotion from a sharded cluster.
Motivation
During the current promotion of a replica set to a sharded cluster, users update their application connection strings after adding their replica set to a sharded cluster. While this is ongoing, the user has both direct, replica set connections and mongoS connections against their cluster. This can cause many problems such as incorrect query results (a database created via a direct connection will be invisible to the mongoS which will return no documents for any collection in that database) and metadata inconsistencies (dropping a database via direct connection will not clean up any metadata on the config server for a database created via mongoS connection).
This project aims to address these issues by introducing a new state for a sharded cluster in which direct and sharded connections can coexist safely.