[SERVER-73812] Do not automatically retry the _shardsvrCloneCatalogData command Created: 09/Feb/23  Updated: 29/Oct/23  Resolved: 14/Feb/23

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

Type: Task Priority: Major - P3
Reporter: Antonio Fuschetto Assignee: Antonio Fuschetto
Resolution: Fixed Votes: 0
Labels: PM-2144-Milestone-0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Sharding EMEA
Backwards Compatibility: Fully Compatible
Sprint: Sharding EMEA 2023-02-20
Participants:

 Description   

The donor shard of the movePrimary invokes the _shardsvrCloneCatalogData command to ask the recipient to clone the unsharded collections of the given database.

If for any reason the recipient fails to clone the catalog data (e.g., the node steps down), the donor automatically retries the command, but it may fail with the NamespaceExists error. This occurs because the previous call may have cloned the data, partially or entirely.

Since _shardsvrCloneCatalogData is not idempotent, and the entire cloning phase of the movePrimary would be repeated after cleaning up any orphaned data on the recipient, the command must be invoked once.



 Comments   
Comment by Githook User [ 14/Feb/23 ]

Author:

{'name': 'Antonio Fuschetto', 'email': 'antonio.fuschetto@mongodb.com', 'username': 'afuschetto'}

Message: SERVER-73812 Do not automatically retry the `_shardsvrCloneCatalogData` command
Branch: master
https://github.com/mongodb/mongo/commit/26f1b9d0e4aea57e5c7b47fa56ace80ad629d405

Generated at Thu Feb 08 06:25:42 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.