-
Type:
Task
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Catalog and Routing
-
Fully Compatible
-
CAR Team 2026-07-06
-
🟥 DDL
-
None
-
None
-
None
-
None
-
None
-
None
During the authoritative commit of splitChunks, to install on the shard catalog only the chunks updated by mergeChunks, we need to introduce a new command that commits the split operation in the global catalog.
Requirements:
- The command must accept the pre-commit ShardVersion as a parameter. This ShardVersion will be used to compute the updated chunks in case of retrying an already completed commit.
- The command must return a list of updated chunks. These chunks will later be persisted to the config.shard.catalog.chunks collection on shards.
- The command must be idempotent. The response must remain unchanged even if a previous attempt has already completed successfully.
- The command must support retryable writes and use the AlternativeClientRegion. This is required to enable replay protection, because MergeChunksCoordinator will send the command with a session id and an incremented transaction number to prevent lagging commands from being applied.
- The command must execute the commit on the global catalog, meaning that the given split points need to be applied and the chunk version for each new chunk needs to be updated.