summaryrefslogtreecommitdiff
path: root/src/mongo/db/s/collection_metadata.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/s/collection_metadata.cpp')
-rw-r--r--src/mongo/db/s/collection_metadata.cpp51
1 files changed, 0 insertions, 51 deletions
diff --git a/src/mongo/db/s/collection_metadata.cpp b/src/mongo/db/s/collection_metadata.cpp
index c96a4848842..76eb80b516a 100644
--- a/src/mongo/db/s/collection_metadata.cpp
+++ b/src/mongo/db/s/collection_metadata.cpp
@@ -103,57 +103,6 @@ void CollectionMetadata::throwIfReshardingInProgress(NamespaceString const& nss)
}
}
-bool CollectionMetadata::disallowWritesForResharding(const UUID& currentCollectionUUID) const {
- if (!isSharded())
- return false;
-
- const auto& reshardingFields = getReshardingFields();
- if (!reshardingFields)
- return false;
-
- switch (reshardingFields->getState()) {
- case CoordinatorStateEnum::kUnused:
- case CoordinatorStateEnum::kInitializing:
- case CoordinatorStateEnum::kPreparingToDonate:
- case CoordinatorStateEnum::kCloning:
- case CoordinatorStateEnum::kApplying:
- return false;
- case CoordinatorStateEnum::kBlockingWrites:
- // Only return true if this is also the donor shard.
- return reshardingFields->getDonorFields() != boost::none;
- case CoordinatorStateEnum::kAborting:
- return false;
- case CoordinatorStateEnum::kCommitting:
- break;
- case CoordinatorStateEnum::kDone:
- return false;
- }
-
- const auto& recipientFields = reshardingFields->getRecipientFields();
- uassert(5325800,
- "Missing 'recipientFields' in collection metadata for resharding operation that has "
- "decision persisted",
- recipientFields);
-
- const auto& originalUUID = recipientFields->getSourceUUID();
- const auto& reshardingUUID = reshardingFields->getReshardingUUID();
-
- if (currentCollectionUUID == originalUUID) {
- // This shard must be both a donor and recipient. Neither the drop or renameCollection have
- // happened yet. Writes should continue to be disallowed.
- return true;
- } else if (currentCollectionUUID == reshardingUUID) {
- // The renameCollection has happened. Writes no longer need be disallowed on this shard.
- return false;
- }
-
- uasserted(ErrorCodes::InvalidUUID,
- "Expected collection to have either the original UUID {} or the resharding UUID {}, "
- "but the collection instead has UUID {}"_format(originalUUID.toString(),
- reshardingUUID.toString(),
- currentCollectionUUID.toString()));
-}
-
BSONObj CollectionMetadata::extractDocumentKey(const BSONObj& doc) const {
BSONObj key;