We should fix the regression introduced by the scatterGather interface where, in the absence of a passed-in query, currently all shards are targeted for requests on sharded collections.
Instead, scatterGather() should be changed to only target shards that actually own data for the collection by assuming an empty query and using ChunkManager::getShardIdsForQuery.
In addition, the following commands should be changed to be broadcast and unversioned:
- createIndexes
- dropIndex
- reIndex
- collMod
- is depended on by
-
SERVER-31232 remove retrying on stale shardVersion errors from cluster_aggregate.cpp
- Closed
- is duplicated by
-
SERVER-29514 improve scatterGather() and establishCursors() interfaces around shard targeting policy
- Closed
- related to
-
SERVER-30344 prevent shards from implicitly creating a collection on createIndexes
- Closed