-
Type: Improvement
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Sharding
-
Cluster Scalability
LogTransactionOperationsForShardingHandler is the onCommit() handler registered for changes resulting from a multi-statement transaction to add those to the _transferMods buffer and eventually propagate them to the recipient shard. LogTransactionOperationsForShardingHandler will filter out changes made to a different namespace but won't filter out changes made to documents outside of the range being migrated. (There are helper functions isShardKeyValueInRange() and isDocInRange() for doing this kind of filtering.) Instead, the recipient shard will receive these change notifications and ignore them when applying changes. This is wasteful because it means a sharded collection under high transactions activity will have slower chunk migrations due to the volume of data the _transferMods command returns.
- is related to
-
SERVER-78414 Recipient shard in chunk migration can skip fetching changes to the migrated range, leading to lost writes
- Closed
-
SERVER-40791 Chunk migration clone blocks behind prepared transactions
- Closed