-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Fully Compatible
-
ALL
-
Sharding 2020-07-27, Sharding 2020-08-10, Sharding 2020-08-24, Sharding 2020-09-21, Sharding 2020-10-05
-
None
-
None
-
None
-
None
-
None
-
None
-
None
new description
We've decided not to do what this ticket originally aimed to do. Remove TODO's for this ticket in the codebase.
old description
Passing an empty NamespaceString to OperationShardingState::initializeClientRoutingVersionsFromCommand() means the OperationShardingState cannot correctly store the shard/database version tied to the command.
service_entry_point_common execCommandDatabase calls oss.initializeClientRoutingVersionsFromCommand(invocation->ns(), request.body).
However, not all commands that go through this path are derived from InvocationBase - thus invocation->ns() yields an empty NamespaceString.
List of commands we found that pass an empty NamespaceString to OperationShardingState::initializeClientRoutingVersionsFromCommand() that aren't derived from InvocationBase:
Additionally, DropConnectionsCmd derives from InvocationBase but passes an empty NamespaceString to OperationShardingState::initializeClientRoutingVersionsFromCommand().
- is related to
-
SERVER-47532 ShardServerProcessInterface: Convert usage of getCollectionDescription_DEPRECATED to getCollectionDescription
-
- Closed
-
- related to
-
SERVER-31946 Doing a find by UUID with a shardVersion results in a StaleShardingError
-
- Backlog
-