summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAllison Easton <allison.easton@mongodb.com>2021-10-11 06:54:47 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2021-10-11 07:42:47 +0000
commit4aee6e6977d61ceebfdc9f8144e2840d0fab4e40 (patch)
treec21a28b38f76df1c03451bef7b83db97e9e461e4
parentc540a205558830d6a2ec7147a004516f741b6e23 (diff)
downloadmongo-4aee6e6977d61ceebfdc9f8144e2840d0fab4e40.tar.gz
SERVER-60552 Separate test for non-existing collection in metadata_manager_test
-rw-r--r--src/mongo/db/s/metadata_manager_test.cpp32
1 files changed, 19 insertions, 13 deletions
diff --git a/src/mongo/db/s/metadata_manager_test.cpp b/src/mongo/db/s/metadata_manager_test.cpp
index a0d355f5c19..f00577ed9ea 100644
--- a/src/mongo/db/s/metadata_manager_test.cpp
+++ b/src/mongo/db/s/metadata_manager_test.cpp
@@ -176,7 +176,25 @@ TEST_F(MetadataManagerTest, CleanUpForMigrateIn) {
ChunkRange range1(BSON("key" << 0), BSON("key" << 10));
ChunkRange range2(BSON("key" << 10), BSON("key" << 20));
- ChunkRange range3(BSON("key" << 20), BSON("key" << 30));
+
+ auto notif1 = _manager->beginReceive(range1);
+ ASSERT(!notif1.isReady());
+
+ auto notif2 = _manager->beginReceive(range2);
+ ASSERT(!notif2.isReady());
+
+ ASSERT_EQ(2UL, _manager->numberOfRangesToClean());
+ ASSERT_EQ(0UL, _manager->numberOfRangesToCleanStillInUse());
+}
+
+TEST_F(MetadataManagerTest, CleanUpForMigrateWithNonExistingCollection) {
+ _manager->setFilteringMetadata(makeEmptyMetadata());
+
+ // Sanity checks
+ ASSERT(_manager->getActiveMetadata(boost::none)->isSharded());
+ ASSERT_EQ(0UL, _manager->getActiveMetadata(boost::none)->getOwnedChunks().size());
+
+ ChunkRange range1(BSON("key" << 0), BSON("key" << 10));
{
FailPointEnableBlock fpb("suspendRangeDeletion");
@@ -185,18 +203,6 @@ TEST_F(MetadataManagerTest, CleanUpForMigrateIn) {
// This will hang if the range deletion task on the non-existing collection is scheduled
notif1.wait();
}
-
- CollectionOptions emptyCollOptions;
- ASSERT_OK(_storage->createCollection(operationContext(), kNss, emptyCollOptions));
-
- auto notif2 = _manager->beginReceive(range2);
- ASSERT(!notif2.isReady());
-
- auto notif3 = _manager->beginReceive(range3);
- ASSERT(!notif3.isReady());
-
- ASSERT_EQ(2UL, _manager->numberOfRangesToClean());
- ASSERT_EQ(0UL, _manager->numberOfRangesToCleanStillInUse());
}
TEST_F(MetadataManagerTest,