diff options
Diffstat (limited to 'src/mongo/db/s/collection_metadata.cpp')
| -rw-r--r-- | src/mongo/db/s/collection_metadata.cpp | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/src/mongo/db/s/collection_metadata.cpp b/src/mongo/db/s/collection_metadata.cpp index 6b0fb689356..ea9f6f0c7c1 100644 --- a/src/mongo/db/s/collection_metadata.cpp +++ b/src/mongo/db/s/collection_metadata.cpp @@ -107,13 +107,13 @@ void CollectionMetadata::throwIfReshardingInProgress(NamespaceString const& nss) } } -BSONObj CollectionMetadata::extractDocumentKey(const ShardKeyPattern* shardKeyPattern, - const BSONObj& doc) { +BSONObj CollectionMetadata::extractDocumentKey(const BSONObj& doc) const { BSONObj key; - if (shardKeyPattern) { - key = dotted_path_support::extractElementsBasedOnTemplate(doc, shardKeyPattern->toBSON()); - if (shardKeyPattern->hasId()) { + if (isSharded()) { + auto const& pattern = _cm->getShardKeyPattern(); + key = dotted_path_support::extractElementsBasedOnTemplate(doc, pattern.toBSON()); + if (pattern.hasId()) { return key; } // else, try to append an _id field from the document. @@ -127,10 +127,6 @@ BSONObj CollectionMetadata::extractDocumentKey(const ShardKeyPattern* shardKeyPa return doc; } -BSONObj CollectionMetadata::extractDocumentKey(const BSONObj& doc) const { - return extractDocumentKey(isSharded() ? &_cm->getShardKeyPattern() : nullptr, doc); -} - std::string CollectionMetadata::toStringBasic() const { if (isSharded()) { return str::stream() << "collection version: " << _cm->getVersion().toString() |
