diff options
author | Kaloian Manassiev <kaloian.manassiev@mongodb.com> | 2016-11-11 15:16:02 -0500 |
---|---|---|
committer | Kaloian Manassiev <kaloian.manassiev@mongodb.com> | 2016-11-15 10:08:45 -0500 |
commit | 19449d2883f2a97b622102935a63606d950573ad (patch) | |
tree | 722847867f0dcdeb7e86dee382cfccfc5afff0dc | |
parent | 57ed82f0692bfb4e7a045a0108d029e53b21e3f8 (diff) | |
download | mongo-19449d2883f2a97b622102935a63606d950573ad.tar.gz |
SERVER-22657 Cleanup CollectionShardingState test and configsvr commands
5 files changed, 24 insertions, 30 deletions
diff --git a/src/mongo/db/s/SConscript b/src/mongo/db/s/SConscript index aa7365abcb6..04317dbe126 100644 --- a/src/mongo/db/s/SConscript +++ b/src/mongo/db/s/SConscript @@ -223,7 +223,6 @@ env.CppUnitTest( '$BUILD_DIR/mongo/db/serveronly', '$BUILD_DIR/mongo/executor/network_test_env', '$BUILD_DIR/mongo/executor/thread_pool_task_executor_test_fixture', - '$BUILD_DIR/mongo/s/catalog/sharding_catalog_mock', '$BUILD_DIR/mongo/s/coreshard', '$BUILD_DIR/mongo/util/clock_source_mock', '$BUILD_DIR/mongo/util/net/message_port_mock', diff --git a/src/mongo/db/s/collection_sharding_state_test.cpp b/src/mongo/db/s/collection_sharding_state_test.cpp index 8a7ca715141..c8d86bd7140 100644 --- a/src/mongo/db/s/collection_sharding_state_test.cpp +++ b/src/mongo/db/s/collection_sharding_state_test.cpp @@ -47,7 +47,7 @@ namespace mongo { namespace { -class CollShardingStateTest : public mongo::unittest::Test { +class CollectionShardingStateTest : public mongo::unittest::Test { public: void setUp() override { _service.setFastClockSource(stdx::make_unique<ClockSourceMock>()); @@ -92,7 +92,7 @@ private: int _initCallCount = 0; }; -TEST_F(CollShardingStateTest, GlobalInitGetsCalledAfterWriteCommits) { +TEST_F(CollectionShardingStateTest, GlobalInitGetsCalledAfterWriteCommits) { CollectionShardingState collShardingState(&_service, NamespaceString::kConfigCollectionNamespace); @@ -112,7 +112,7 @@ TEST_F(CollShardingStateTest, GlobalInitGetsCalledAfterWriteCommits) { ASSERT_EQ(1, getInitCallCount()); } -TEST_F(CollShardingStateTest, GlobalInitDoesntGetCalledIfWriteAborts) { +TEST_F(CollectionShardingStateTest, GlobalInitDoesntGetCalledIfWriteAborts) { CollectionShardingState collShardingState(getServiceContext(), NamespaceString::kConfigCollectionNamespace); @@ -132,7 +132,7 @@ TEST_F(CollShardingStateTest, GlobalInitDoesntGetCalledIfWriteAborts) { ASSERT_EQ(0, getInitCallCount()); } -TEST_F(CollShardingStateTest, GlobalInitDoesntGetsCalledIfNSIsNotForShardIdentity) { +TEST_F(CollectionShardingStateTest, GlobalInitDoesntGetCalledIfNSIsNotForShardIdentity) { CollectionShardingState collShardingState(getServiceContext(), NamespaceString("admin.user")); ShardIdentityType shardIdentity; @@ -151,7 +151,7 @@ TEST_F(CollShardingStateTest, GlobalInitDoesntGetsCalledIfNSIsNotForShardIdentit ASSERT_EQ(0, getInitCallCount()); } -TEST_F(CollShardingStateTest, OnInsertOpThrowWithIncompleteShardIdentityDocument) { +TEST_F(CollectionShardingStateTest, OnInsertOpThrowWithIncompleteShardIdentityDocument) { CollectionShardingState collShardingState(getServiceContext(), NamespaceString::kConfigCollectionNamespace); @@ -161,7 +161,7 @@ TEST_F(CollShardingStateTest, OnInsertOpThrowWithIncompleteShardIdentityDocument ASSERT_THROWS(collShardingState.onInsertOp(txn(), shardIdentity.toBSON()), AssertionException); } -TEST_F(CollShardingStateTest, GlobalInitDoesntGetsCalledIfShardIdentityDocWasNotInserted) { +TEST_F(CollectionShardingStateTest, GlobalInitDoesntGetCalledIfShardIdentityDocWasNotInserted) { CollectionShardingState collShardingState(getServiceContext(), NamespaceString::kConfigCollectionNamespace); diff --git a/src/mongo/db/s/config/configsvr_commit_chunk_migration_command.cpp b/src/mongo/db/s/config/configsvr_commit_chunk_migration_command.cpp index 0db1f4eae09..19f45011de5 100644 --- a/src/mongo/db/s/config/configsvr_commit_chunk_migration_command.cpp +++ b/src/mongo/db/s/config/configsvr_commit_chunk_migration_command.cpp @@ -303,6 +303,10 @@ public: int options, std::string& errmsg, BSONObjBuilder& result) override { + uassert(ErrorCodes::IllegalOperation, + str::stream() << getName() << " can only be run on config servers", + serverGlobalParams.clusterRole == ClusterRole::ConfigServer); + const NamespaceString nss = NamespaceString(parseNs(dbName, cmdObj)); CommitChunkMigrationRequest commitChunkMigrationRequest = diff --git a/src/mongo/db/s/config/configsvr_merge_chunk_command.cpp b/src/mongo/db/s/config/configsvr_merge_chunk_command.cpp index 8988a5e4e4e..d63287a9263 100644 --- a/src/mongo/db/s/config/configsvr_merge_chunk_command.cpp +++ b/src/mongo/db/s/config/configsvr_merge_chunk_command.cpp @@ -45,8 +45,6 @@ namespace mongo { namespace { -using std::string; - /** * Internal sharding command run on config servers to merge a set of chunks. * @@ -104,26 +102,23 @@ public: int options, std::string& errmsg, BSONObjBuilder& result) override { - if (serverGlobalParams.clusterRole != ClusterRole::ConfigServer) { - uasserted(ErrorCodes::IllegalOperation, - "_configsvrCommitChunkMerge can only be run on config servers"); - } + uassert(ErrorCodes::IllegalOperation, + str::stream() << getName() << " can only be run on config servers", + serverGlobalParams.clusterRole == ClusterRole::ConfigServer); auto parsedRequest = uassertStatusOK(MergeChunkRequest::parseFromConfigCommand(cmdObj)); - Status mergeChunkResult = + uassertStatusOK( Grid::get(txn)->catalogManager()->commitChunkMerge(txn, parsedRequest.getNamespace(), parsedRequest.getEpoch(), parsedRequest.getChunkBoundaries(), - parsedRequest.getShardName()); - - if (!mergeChunkResult.isOK()) { - return appendCommandStatus(result, mergeChunkResult); - } + parsedRequest.getShardName())); return true; } + } configsvrMergeChunkCmd; + } // namespace } // namespace mongo diff --git a/src/mongo/db/s/config/configsvr_split_chunk_command.cpp b/src/mongo/db/s/config/configsvr_split_chunk_command.cpp index a8744987929..b232cb43a7f 100644 --- a/src/mongo/db/s/config/configsvr_split_chunk_command.cpp +++ b/src/mongo/db/s/config/configsvr_split_chunk_command.cpp @@ -45,8 +45,6 @@ namespace mongo { namespace { -using std::string; - /** * Internal sharding command run on config servers to split a chunk. * @@ -102,26 +100,24 @@ public: int options, std::string& errmsg, BSONObjBuilder& result) override { - if (serverGlobalParams.clusterRole != ClusterRole::ConfigServer) { - uasserted(ErrorCodes::IllegalOperation, - "_configsvrCommitChunkSplit can only be run on config servers"); - } + uassert(ErrorCodes::IllegalOperation, + str::stream() << getName() << " can only be run on config servers", + serverGlobalParams.clusterRole == ClusterRole::ConfigServer); auto parsedRequest = uassertStatusOK(SplitChunkRequest::parseFromConfigCommand(cmdObj)); - Status splitChunkResult = + uassertStatusOK( Grid::get(txn)->catalogManager()->commitChunkSplit(txn, parsedRequest.getNamespace(), parsedRequest.getEpoch(), parsedRequest.getChunkRange(), parsedRequest.getSplitPoints(), - parsedRequest.getShardName()); - if (!splitChunkResult.isOK()) { - return appendCommandStatus(result, splitChunkResult); - } + parsedRequest.getShardName())); return true; } + } configsvrSplitChunkCmd; + } // namespace } // namespace mongo |