We no longer longer need to pass the config connection string in sharding commands to initiate the sharding state on sharding unaware shard servers. As of v3.4, shards are shard aware, and get the config connection string from the shard identity document stored on the shard servers. SERVER-27625 cleaned up the dead sharding initialization code via setShardVersion, but the config connection string command parameters still exist: these are unused and must be removed.
On the config server, ShardRegistry::getConfigServerConnectionString() is used to provide the config connection string via ShardLocal::getConnString(), which gets it from the ReplicationCoordinator's ReplicaSetConfig, since config servers are always replica sets. We should only ever need to use the config connection string in one place on the config server, which is to create the shard identity document during addShard command execution. Therefore, since ShardLocal::getConnString() only has one user, creating the shard identity document will just go straight to the replication state.
- has to be done before
-
SERVER-27860 Enable ShardLocal on shards
- Closed
- is related to
-
SERVER-27625 Remove dead ANSA and setShardVersion code
- Closed