-
Type: Bug
-
Resolution: Duplicate
-
Priority: Major - P3
-
None
-
Affects Version/s: 2.4.3
-
Component/s: Replication, Sharding
-
None
-
ALL
If you have a sharded cluster:
A - a single node
B - a replicaset of 3 data bearing nodes.
When performing a moveChunk the secondaryThrottle flag is checked against the target shard and used if there are multiple nodes in the target shard. This setting is used for both the move to the target shard, and the remove from the source shard.
When moving from A->B
- The target shard has multiple nodes, so secondaryThrottle is used. I.e. the remove from A is performed with a {w:2} and timeout of 60 seconds, thereby waiting for 60 seconds for each moveChunk.
Also, when moving from B->A
- The target shard has only a single node, so no secondaryThrottle is used. I.e. the remove from B does not wait for replication, though that may be what is intended.
This can cause large delays.
- duplicates
-
SERVER-14041 enhance secondaryThrottle parameter
- Closed
- is related to
-
SERVER-14465 Default write concern based on configuration (w:default)
- Closed
- related to
-
SERVER-9407 Helpers::removeRange always waits for 2 secondaries if secondaryThrottle is true
- Closed
-
SERVER-14041 enhance secondaryThrottle parameter
- Closed