diff options
author | Gregory Noma <gregory.noma@gmail.com> | 2018-07-18 10:56:49 -0400 |
---|---|---|
committer | Gregory Noma <gregory.noma@gmail.com> | 2018-07-23 10:18:29 -0400 |
commit | fac322339b61e92f1d275099e5ecc2fe06c3fd09 (patch) | |
tree | 200866137675fa0add1247fcf7ab1fab2e6f1db2 | |
parent | e065e7daa99f75f19a73fc1b2b57a8947852a006 (diff) | |
download | mongo-fac322339b61e92f1d275099e5ecc2fe06c3fd09.tar.gz |
SERVER-35910 Use correct parseNs function in ClusterFindCmd's ns()
-rw-r--r-- | jstests/sharding/find_collname_uuid_test.js | 21 | ||||
-rw-r--r-- | src/mongo/s/commands/cluster_find_cmd.cpp | 3 |
2 files changed, 23 insertions, 1 deletions
diff --git a/jstests/sharding/find_collname_uuid_test.js b/jstests/sharding/find_collname_uuid_test.js new file mode 100644 index 00000000000..59f2e4e7674 --- /dev/null +++ b/jstests/sharding/find_collname_uuid_test.js @@ -0,0 +1,21 @@ +/** + * Test ClusterFindCmd with UUID for collection name fails (but does not crash) + */ +(function() { + "use strict"; + + var cmdRes; + var cursorId; + + var st = new ShardingTest({shards: 2}); + st.stopBalancer(); + + var db = st.s.getDB("test"); + + assert.commandWorked(db.adminCommand({enableSharding: db.getName()})); + + cmdRes = db.adminCommand({find: UUID()}); + assert.commandFailed(cmdRes); + + st.stop(); +})(); diff --git a/src/mongo/s/commands/cluster_find_cmd.cpp b/src/mongo/s/commands/cluster_find_cmd.cpp index b0dba6a4b2d..f879e3f1b96 100644 --- a/src/mongo/s/commands/cluster_find_cmd.cpp +++ b/src/mongo/s/commands/cluster_find_cmd.cpp @@ -103,7 +103,8 @@ public: NamespaceString ns() const override { // TODO get the ns from the parsed QueryRequest. - return NamespaceString(CommandHelpers::parseNsFromCommand(_dbName, _request.body)); + return NamespaceString( + CommandHelpers::parseNsCollectionRequired(_dbName, _request.body)); } /** |