Detailed description to follow.
Because donor shard secondaries do not block access to the donated chunk during the period of time when the primary is waiting for the config server to acknowledge the chunk migration commit message, they may serve reads of stale data after the recipient shard has accepted the donated chunk and taken writes to it. In the jargon of the sharding team, because donor shard secondaries do not observe the "chunk migration commit critical section", they may serve reads of documents owned by the recipient shard during the time between the primary sending the chunk commit message to the config server and the primary subsequently refreshing its routing table.
- is depended on by
-
SERVER-31713 Persisted routing table refreshes cause in-memory routing table invalidations on primaries and secondaries, but should only do so on secondaries
- Closed
- is related to
-
SERVER-30957 Causal consistency can be broken by migration
- Closed