summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKaloian Manassiev <kaloian.manassiev@mongodb.com>2016-11-11 15:16:02 -0500
committerKaloian Manassiev <kaloian.manassiev@mongodb.com>2016-11-15 10:08:45 -0500
commit19449d2883f2a97b622102935a63606d950573ad (patch)
tree722847867f0dcdeb7e86dee382cfccfc5afff0dc
parent57ed82f0692bfb4e7a045a0108d029e53b21e3f8 (diff)
downloadmongo-19449d2883f2a97b622102935a63606d950573ad.tar.gz
SERVER-22657 Cleanup CollectionShardingState test and configsvr commands
-rw-r--r--src/mongo/db/s/SConscript1
-rw-r--r--src/mongo/db/s/collection_sharding_state_test.cpp12
-rw-r--r--src/mongo/db/s/config/configsvr_commit_chunk_migration_command.cpp4
-rw-r--r--src/mongo/db/s/config/configsvr_merge_chunk_command.cpp19
-rw-r--r--src/mongo/db/s/config/configsvr_split_chunk_command.cpp18
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