summaryrefslogtreecommitdiff
path: root/src/mongo/db/s/config/sharding_catalog_manager_drop_coll_test.cpp
diff options
context:
space:
mode:
authorCheahuychou Mao <cheahuychou.mao@mongodb.com>2018-06-28 10:47:48 -0400
committerCheahuychou Mao <cheahuychou.mao@mongodb.com>2018-07-03 10:29:01 -0400
commit505c2910fca53d8a43882a356e298936a12062a8 (patch)
tree5af4b3919616e4b141265a9d400ccf1a0a71a42a /src/mongo/db/s/config/sharding_catalog_manager_drop_coll_test.cpp
parentb76457d9aa0188e1d2369851506b9d4d927024cb (diff)
downloadmongo-505c2910fca53d8a43882a356e298936a12062a8.tar.gz
SERVER-35441 Make dropDatabase/dropCollection clean up config.tags
Diffstat (limited to 'src/mongo/db/s/config/sharding_catalog_manager_drop_coll_test.cpp')
-rw-r--r--src/mongo/db/s/config/sharding_catalog_manager_drop_coll_test.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/mongo/db/s/config/sharding_catalog_manager_drop_coll_test.cpp b/src/mongo/db/s/config/sharding_catalog_manager_drop_coll_test.cpp
index 7d5c7481893..c99ec710f9c 100644
--- a/src/mongo/db/s/config/sharding_catalog_manager_drop_coll_test.cpp
+++ b/src/mongo/db/s/config/sharding_catalog_manager_drop_coll_test.cpp
@@ -37,6 +37,7 @@
#include "mongo/s/catalog/type_chunk.h"
#include "mongo/s/catalog/type_collection.h"
#include "mongo/s/catalog/type_shard.h"
+#include "mongo/s/catalog/type_tags.h"
#include "mongo/s/chunk_version.h"
#include "mongo/s/client/shard_registry.h"
#include "mongo/s/config_server_test_fixture.h"
@@ -87,6 +88,15 @@ public:
ASSERT_OK(insertToConfigCollection(
operationContext(), CollectionType::ConfigNS, shardedCollection.toBSON()));
+ BSONObjBuilder tagDocBuilder;
+ tagDocBuilder.append("_id", BSON(TagsType::ns(dropNS().ns()) << TagsType::min(_min)));
+ tagDocBuilder.append(TagsType::ns(), dropNS().ns());
+ tagDocBuilder.append(TagsType::min(), _min);
+ tagDocBuilder.append(TagsType::max(), _max);
+ tagDocBuilder.append(TagsType::tag(), _zoneName);
+ ASSERT_OK(
+ insertToConfigCollection(operationContext(), TagsType::ConfigNS, tagDocBuilder.obj()));
+
BSONObjBuilder chunkDocBuilder;
chunkDocBuilder.append("ns", dropNS().ns());
chunkDocBuilder.append("min", _min);
@@ -142,6 +152,12 @@ public:
ASSERT_EQ(ErrorCodes::NoMatchingDocument, findStatus);
}
+ void expectNoTagDocs() {
+ auto findStatus =
+ findOneOnConfigCollection(operationContext(), TagsType::ConfigNS, BSONObj());
+ ASSERT_EQ(ErrorCodes::NoMatchingDocument, findStatus);
+ }
+
void shutdownExecutor() {
ConfigServerTestFixture::executor()->shutdown();
}
@@ -194,6 +210,7 @@ TEST_F(DropColl2ShardTest, Basic) {
expectCollectionDocMarkedAsDropped();
expectNoChunkDocs();
+ expectNoTagDocs();
}
TEST_F(DropColl2ShardTest, NSNotFound) {
@@ -238,6 +255,7 @@ TEST_F(DropColl2ShardTest, NSNotFound) {
expectCollectionDocMarkedAsDropped();
expectNoChunkDocs();
+ expectNoTagDocs();
}
TEST_F(DropColl2ShardTest, FirstShardTargeterError) {
@@ -356,6 +374,7 @@ TEST_F(DropColl2ShardTest, CleanupChunkError) {
expectCollectionDocMarkedAsDropped();
expectNoChunkDocs();
+ expectNoTagDocs();
}
TEST_F(DropColl2ShardTest, SSVCmdErrorOnShard1) {
@@ -377,6 +396,7 @@ TEST_F(DropColl2ShardTest, SSVCmdErrorOnShard1) {
expectCollectionDocMarkedAsDropped();
expectNoChunkDocs();
+ expectNoTagDocs();
}
TEST_F(DropColl2ShardTest, SSVErrorOnShard1) {
@@ -398,6 +418,7 @@ TEST_F(DropColl2ShardTest, SSVErrorOnShard1) {
expectCollectionDocMarkedAsDropped();
expectNoChunkDocs();
+ expectNoTagDocs();
}
TEST_F(DropColl2ShardTest, UnsetCmdErrorOnShard1) {
@@ -421,6 +442,7 @@ TEST_F(DropColl2ShardTest, UnsetCmdErrorOnShard1) {
expectCollectionDocMarkedAsDropped();
expectNoChunkDocs();
+ expectNoTagDocs();
}
TEST_F(DropColl2ShardTest, UnsetErrorOnShard1) {
@@ -444,6 +466,7 @@ TEST_F(DropColl2ShardTest, UnsetErrorOnShard1) {
expectCollectionDocMarkedAsDropped();
expectNoChunkDocs();
+ expectNoTagDocs();
}
TEST_F(DropColl2ShardTest, SSVCmdErrorOnShard2) {
@@ -468,6 +491,7 @@ TEST_F(DropColl2ShardTest, SSVCmdErrorOnShard2) {
expectCollectionDocMarkedAsDropped();
expectNoChunkDocs();
+ expectNoTagDocs();
}
TEST_F(DropColl2ShardTest, SSVErrorOnShard2) {
@@ -492,6 +516,7 @@ TEST_F(DropColl2ShardTest, SSVErrorOnShard2) {
expectCollectionDocMarkedAsDropped();
expectNoChunkDocs();
+ expectNoTagDocs();
}
TEST_F(DropColl2ShardTest, UnsetCmdErrorOnShard2) {
@@ -518,6 +543,7 @@ TEST_F(DropColl2ShardTest, UnsetCmdErrorOnShard2) {
expectCollectionDocMarkedAsDropped();
expectNoChunkDocs();
+ expectNoTagDocs();
}
TEST_F(DropColl2ShardTest, UnsetErrorOnShard2) {
@@ -544,6 +570,7 @@ TEST_F(DropColl2ShardTest, UnsetErrorOnShard2) {
expectCollectionDocMarkedAsDropped();
expectNoChunkDocs();
+ expectNoTagDocs();
}
} // unnamed namespace