[SERVER-63606] Push clusterParameters onto newly added shards in the addShard procedure Created: 14/Feb/22  Updated: 29/Oct/23  Resolved: 11/Apr/22

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: None
Fix Version/s: 6.0.0-rc0

Type: Task Priority: Major - P3
Reporter: Jordi Serra Torrens Assignee: Marcos José Grillo Ramirez
Resolution: Fixed Votes: 0
Labels: auto-reverted
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-65386 Change addShard behavior to keep clus... Closed
Problem/Incident
Backwards Compatibility: Fully Compatible
Sprint: Sharding EMEA 2022-04-04, Sharding EMEA 2022-04-18
Participants:
Linked BF Score: 151

 Description   

When adding a new shard to a cluster, the configsvr should push the clusterParameters onto the newly added shard. This should be done during the _configsvrAddShard procedure, before the new shard has become a member of the cluster.

This ticket should also ensure that SetClusterParameterCoordinator serializes with add/remove shard when propagating new parameter values to the shards. This is needed to avoid situations where due to a concurrently added shard, SetClusterParameterCoordinator would miss propagating the new parameter to that new shard.



 Comments   
Comment by Githook User [ 11/Apr/22 ]

Author:

{'name': 'Marcos José Grillo Ramirez', 'email': 'marcos.grillo@mongodb.com', 'username': 'm4nti5'}

Message: SERVER-63606 Serialize setClusterParameter with add/remove shard and push parameters on newly added shards
Branch: master
https://github.com/mongodb/mongo/commit/c1df9d9496b5a29f1bc16e5673fa6b337412a2f4

Comment by xgen-buildbaron-user [ 09/Apr/22 ]

Ticket re-opened due to revert. compile_dist_test began a consistent failure of compile_dist_test

Comment by Githook User [ 09/Apr/22 ]

Author:

{'name': 'auto-revert-processor', 'email': 'dev-prod-dag@mongodb.com'}

Message: Revert "SERVER-63606 Serialize setClusterParameter with add/remove shard and push parameters on newly added shards"

This reverts commit e15d236351e05a1d9bf3d3b043a260fd90972301.
Branch: master
https://github.com/mongodb/mongo/commit/dc271946221f20e8629d74104d3252862741949e

Comment by Githook User [ 08/Apr/22 ]

Author:

{'name': 'Marcos José Grillo Ramirez', 'email': 'marcos.grillo@mongodb.com', 'username': 'm4nti5'}

Message: SERVER-63606 Serialize setClusterParameter with add/remove shard and push parameters on newly added shards
Branch: master
https://github.com/mongodb/mongo/commit/e15d236351e05a1d9bf3d3b043a260fd90972301

Comment by Jordi Serra Torrens [ 14/Feb/22 ]

Thanks for the suggestion kaloian.manassiev, I absolutely agree. Rephrasing this ticket.

Comment by Kaloian Manassiev [ 14/Feb/22 ]

I would not recommend that shards pull from the config server. This is not what we do for assigning FCV to the newly added shards and also adds another direction of propagation from the DDL coordinator that you are building.

Since addShard already runs on the config server, you can just serialise it with the DDL coordinator for parameters/write blocking and make the addShard procedure push into the newly added shard.

Generated at Thu Feb 08 05:58:12 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.