From 8d555140ce24b9f59e4672a0ed026502fdfffd2c Mon Sep 17 00:00:00 2001 From: Mathias Stearn Date: Fri, 23 Jun 2017 10:45:48 -0400 Subject: SERVER-29731 get errmsg out of BasicCommand api It is now only used by commands deriving from ErrmsgCommandDeprecated. --- src/mongo/db/s/check_sharding_index_command.cpp | 14 +++++++------- src/mongo/db/s/cleanup_orphaned_cmd.cpp | 14 +++++++------- src/mongo/db/s/config/configsvr_add_shard_command.cpp | 1 - .../db/s/config/configsvr_add_shard_to_zone_command.cpp | 1 - .../config/configsvr_commit_chunk_migration_command.cpp | 1 - .../db/s/config/configsvr_control_balancer_command.cpp | 1 - src/mongo/db/s/config/configsvr_merge_chunk_command.cpp | 1 - src/mongo/db/s/config/configsvr_move_chunk_command.cpp | 1 - .../db/s/config/configsvr_move_primary_command.cpp | 3 +-- .../config/configsvr_remove_shard_from_zone_command.cpp | 1 - ...figsvr_set_feature_compatibility_version_command.cpp | 1 - .../db/s/config/configsvr_shard_collection_command.cpp | 1 - src/mongo/db/s/config/configsvr_split_chunk_command.cpp | 1 - .../config/configsvr_update_zone_key_range_command.cpp | 1 - src/mongo/db/s/force_routing_table_refresh_command.cpp | 1 - src/mongo/db/s/get_shard_version_command.cpp | 1 - src/mongo/db/s/merge_chunks_command.cpp | 14 +++++++------- .../s/migration_chunk_cloner_source_legacy_commands.cpp | 2 -- .../s/migration_destination_manager_legacy_commands.cpp | 17 +++++++---------- src/mongo/db/s/move_chunk_command.cpp | 1 - src/mongo/db/s/set_shard_version_command.cpp | 14 +++++++------- src/mongo/db/s/sharding_state_command.cpp | 1 - src/mongo/db/s/split_chunk_command.cpp | 14 +++++++------- src/mongo/db/s/split_vector_command.cpp | 14 +++++++------- src/mongo/db/s/unset_sharding_command.cpp | 1 - 25 files changed, 50 insertions(+), 72 deletions(-) (limited to 'src/mongo/db/s') diff --git a/src/mongo/db/s/check_sharding_index_command.cpp b/src/mongo/db/s/check_sharding_index_command.cpp index 576bb7bbc72..f05e036d55c 100644 --- a/src/mongo/db/s/check_sharding_index_command.cpp +++ b/src/mongo/db/s/check_sharding_index_command.cpp @@ -54,9 +54,9 @@ namespace dps = ::mongo::dotted_path_support; namespace { -class CheckShardingIndex : public BasicCommand { +class CheckShardingIndex : public ErrmsgCommandDeprecated { public: - CheckShardingIndex() : BasicCommand("checkShardingIndex") {} + CheckShardingIndex() : ErrmsgCommandDeprecated("checkShardingIndex") {} virtual void help(std::stringstream& help) const { help << "Internal command.\n"; @@ -82,11 +82,11 @@ public: return parseNsFullyQualified(dbname, cmdObj); } - bool run(OperationContext* opCtx, - const std::string& dbname, - const BSONObj& jsobj, - std::string& errmsg, - BSONObjBuilder& result) { + bool errmsgRun(OperationContext* opCtx, + const std::string& dbname, + const BSONObj& jsobj, + std::string& errmsg, + BSONObjBuilder& result) { const NamespaceString nss = NamespaceString(parseNs(dbname, jsobj)); BSONObj keyPattern = jsobj.getObjectField("keyPattern"); diff --git a/src/mongo/db/s/cleanup_orphaned_cmd.cpp b/src/mongo/db/s/cleanup_orphaned_cmd.cpp index a7af78a64f8..c5b1582a7d3 100644 --- a/src/mongo/db/s/cleanup_orphaned_cmd.cpp +++ b/src/mongo/db/s/cleanup_orphaned_cmd.cpp @@ -168,9 +168,9 @@ CleanupResult cleanupOrphanedData(OperationContext* opCtx, * writeConcern: { } * } */ -class CleanupOrphanedCommand : public BasicCommand { +class CleanupOrphanedCommand : public ErrmsgCommandDeprecated { public: - CleanupOrphanedCommand() : BasicCommand("cleanupOrphaned") {} + CleanupOrphanedCommand() : ErrmsgCommandDeprecated("cleanupOrphaned") {} virtual bool slaveOk() const { return false; @@ -203,11 +203,11 @@ public: // Output static BSONField stoppedAtKeyField; - bool run(OperationContext* opCtx, - string const& db, - const BSONObj& cmdObj, - string& errmsg, - BSONObjBuilder& result) { + bool errmsgRun(OperationContext* opCtx, + string const& db, + const BSONObj& cmdObj, + string& errmsg, + BSONObjBuilder& result) { string ns; if (!FieldParser::extract(cmdObj, nsField, &ns, &errmsg)) { return false; diff --git a/src/mongo/db/s/config/configsvr_add_shard_command.cpp b/src/mongo/db/s/config/configsvr_add_shard_command.cpp index 6459347f185..e568ccb0a89 100644 --- a/src/mongo/db/s/config/configsvr_add_shard_command.cpp +++ b/src/mongo/db/s/config/configsvr_add_shard_command.cpp @@ -89,7 +89,6 @@ public: bool run(OperationContext* opCtx, const std::string& unusedDbName, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { if (serverGlobalParams.clusterRole != ClusterRole::ConfigServer) { return appendCommandStatus( diff --git a/src/mongo/db/s/config/configsvr_add_shard_to_zone_command.cpp b/src/mongo/db/s/config/configsvr_add_shard_to_zone_command.cpp index d5bbc204458..50d0779737f 100644 --- a/src/mongo/db/s/config/configsvr_add_shard_to_zone_command.cpp +++ b/src/mongo/db/s/config/configsvr_add_shard_to_zone_command.cpp @@ -90,7 +90,6 @@ public: bool run(OperationContext* opCtx, const std::string& unusedDbName, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { if (serverGlobalParams.clusterRole != ClusterRole::ConfigServer) { uasserted(ErrorCodes::IllegalOperation, 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 7cdb5a8522b..4581f2d9b9e 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 @@ -120,7 +120,6 @@ public: bool run(OperationContext* opCtx, const std::string& dbName, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { const NamespaceString nss = NamespaceString(parseNs(dbName, cmdObj)); diff --git a/src/mongo/db/s/config/configsvr_control_balancer_command.cpp b/src/mongo/db/s/config/configsvr_control_balancer_command.cpp index 01b348367a9..f264d07b821 100644 --- a/src/mongo/db/s/config/configsvr_control_balancer_command.cpp +++ b/src/mongo/db/s/config/configsvr_control_balancer_command.cpp @@ -75,7 +75,6 @@ public: bool run(OperationContext* opCtx, const std::string& unusedDbName, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) final { uassert(ErrorCodes::InternalError, str::stream() << "Expected to find a " << getName() << " command, but found " 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 c9b92fc8160..5dbc9401d58 100644 --- a/src/mongo/db/s/config/configsvr_merge_chunk_command.cpp +++ b/src/mongo/db/s/config/configsvr_merge_chunk_command.cpp @@ -101,7 +101,6 @@ public: bool run(OperationContext* opCtx, const std::string& dbName, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { if (serverGlobalParams.clusterRole != ClusterRole::ConfigServer) { uasserted(ErrorCodes::IllegalOperation, diff --git a/src/mongo/db/s/config/configsvr_move_chunk_command.cpp b/src/mongo/db/s/config/configsvr_move_chunk_command.cpp index 9ebc98537a0..7156a604fd5 100644 --- a/src/mongo/db/s/config/configsvr_move_chunk_command.cpp +++ b/src/mongo/db/s/config/configsvr_move_chunk_command.cpp @@ -81,7 +81,6 @@ public: bool run(OperationContext* opCtx, const std::string& unusedDbName, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { auto request = uassertStatusOK(BalanceChunkRequest::parseFromConfigCommand(cmdObj)); diff --git a/src/mongo/db/s/config/configsvr_move_primary_command.cpp b/src/mongo/db/s/config/configsvr_move_primary_command.cpp index d663c4d56e0..227c6b05bc5 100644 --- a/src/mongo/db/s/config/configsvr_move_primary_command.cpp +++ b/src/mongo/db/s/config/configsvr_move_primary_command.cpp @@ -101,8 +101,7 @@ public: bool run(OperationContext* opCtx, const std::string& dbname_unused, const BSONObj& cmdObj, - std::string& errmsg, - BSONObjBuilder& result) { + BSONObjBuilder& result) override { if (serverGlobalParams.clusterRole != ClusterRole::ConfigServer) { return appendCommandStatus( diff --git a/src/mongo/db/s/config/configsvr_remove_shard_from_zone_command.cpp b/src/mongo/db/s/config/configsvr_remove_shard_from_zone_command.cpp index e053985255a..7ca7c14ebbd 100644 --- a/src/mongo/db/s/config/configsvr_remove_shard_from_zone_command.cpp +++ b/src/mongo/db/s/config/configsvr_remove_shard_from_zone_command.cpp @@ -90,7 +90,6 @@ public: bool run(OperationContext* opCtx, const std::string& unusedDbName, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { if (serverGlobalParams.clusterRole != ClusterRole::ConfigServer) { uasserted(ErrorCodes::IllegalOperation, diff --git a/src/mongo/db/s/config/configsvr_set_feature_compatibility_version_command.cpp b/src/mongo/db/s/config/configsvr_set_feature_compatibility_version_command.cpp index 021f19d62e5..233f5678bca 100644 --- a/src/mongo/db/s/config/configsvr_set_feature_compatibility_version_command.cpp +++ b/src/mongo/db/s/config/configsvr_set_feature_compatibility_version_command.cpp @@ -94,7 +94,6 @@ public: bool run(OperationContext* opCtx, const std::string& unusedDbName, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { const auto version = uassertStatusOK( FeatureCompatibilityVersionCommandParser::extractVersionFromCommand(getName(), cmdObj)); diff --git a/src/mongo/db/s/config/configsvr_shard_collection_command.cpp b/src/mongo/db/s/config/configsvr_shard_collection_command.cpp index 4bf43a0635b..44eb62c753b 100644 --- a/src/mongo/db/s/config/configsvr_shard_collection_command.cpp +++ b/src/mongo/db/s/config/configsvr_shard_collection_command.cpp @@ -163,7 +163,6 @@ public: bool run(OperationContext* opCtx, const std::string& dbname, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { uassert(ErrorCodes::IllegalOperation, 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 acfd59c1cf2..10cc59c6d4c 100644 --- a/src/mongo/db/s/config/configsvr_split_chunk_command.cpp +++ b/src/mongo/db/s/config/configsvr_split_chunk_command.cpp @@ -99,7 +99,6 @@ public: bool run(OperationContext* opCtx, const std::string& dbName, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { if (serverGlobalParams.clusterRole != ClusterRole::ConfigServer) { uasserted(ErrorCodes::IllegalOperation, diff --git a/src/mongo/db/s/config/configsvr_update_zone_key_range_command.cpp b/src/mongo/db/s/config/configsvr_update_zone_key_range_command.cpp index 488e432f2eb..f41ce235507 100644 --- a/src/mongo/db/s/config/configsvr_update_zone_key_range_command.cpp +++ b/src/mongo/db/s/config/configsvr_update_zone_key_range_command.cpp @@ -92,7 +92,6 @@ public: bool run(OperationContext* opCtx, const std::string& unusedDbName, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { if (serverGlobalParams.clusterRole != ClusterRole::ConfigServer) { uasserted(ErrorCodes::IllegalOperation, diff --git a/src/mongo/db/s/force_routing_table_refresh_command.cpp b/src/mongo/db/s/force_routing_table_refresh_command.cpp index b863fa677b8..6d144041702 100644 --- a/src/mongo/db/s/force_routing_table_refresh_command.cpp +++ b/src/mongo/db/s/force_routing_table_refresh_command.cpp @@ -107,7 +107,6 @@ public: bool run(OperationContext* opCtx, const std::string& dbname, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) { auto shardingState = ShardingState::get(opCtx); uassertStatusOK(shardingState->canAcceptShardedCommands()); diff --git a/src/mongo/db/s/get_shard_version_command.cpp b/src/mongo/db/s/get_shard_version_command.cpp index 7808b08005a..f400d9f31bc 100644 --- a/src/mongo/db/s/get_shard_version_command.cpp +++ b/src/mongo/db/s/get_shard_version_command.cpp @@ -85,7 +85,6 @@ public: bool run(OperationContext* opCtx, const std::string& dbname, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { const NamespaceString nss(parseNs(dbname, cmdObj)); uassert(ErrorCodes::InvalidNamespace, diff --git a/src/mongo/db/s/merge_chunks_command.cpp b/src/mongo/db/s/merge_chunks_command.cpp index 13286839627..211ae01117c 100644 --- a/src/mongo/db/s/merge_chunks_command.cpp +++ b/src/mongo/db/s/merge_chunks_command.cpp @@ -319,9 +319,9 @@ Status mergeChunks(OperationContext* opCtx, return Status::OK(); } -class MergeChunksCommand : public BasicCommand { +class MergeChunksCommand : public ErrmsgCommandDeprecated { public: - MergeChunksCommand() : BasicCommand("mergeChunks") {} + MergeChunksCommand() : ErrmsgCommandDeprecated("mergeChunks") {} void help(stringstream& h) const override { h << "Merge Chunks command\n" @@ -361,11 +361,11 @@ public: // Optional, if the merge is only valid for a particular epoch static BSONField epochField; - bool run(OperationContext* opCtx, - const string& dbname, - const BSONObj& cmdObj, - string& errmsg, - BSONObjBuilder& result) override { + bool errmsgRun(OperationContext* opCtx, + const string& dbname, + const BSONObj& cmdObj, + string& errmsg, + BSONObjBuilder& result) override { uassertStatusOK(ShardingState::get(opCtx)->canAcceptShardedCommands()); string ns = parseNs(dbname, cmdObj); diff --git a/src/mongo/db/s/migration_chunk_cloner_source_legacy_commands.cpp b/src/mongo/db/s/migration_chunk_cloner_source_legacy_commands.cpp index 5ccadd3f724..9e3e83774ee 100644 --- a/src/mongo/db/s/migration_chunk_cloner_source_legacy_commands.cpp +++ b/src/mongo/db/s/migration_chunk_cloner_source_legacy_commands.cpp @@ -142,7 +142,6 @@ public: bool run(OperationContext* opCtx, const std::string&, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) { const MigrationSessionId migrationSessionId( uassertStatusOK(MigrationSessionId::extractFromBSON(cmdObj))); @@ -205,7 +204,6 @@ public: bool run(OperationContext* opCtx, const std::string&, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) { const MigrationSessionId migrationSessionId( uassertStatusOK(MigrationSessionId::extractFromBSON(cmdObj))); diff --git a/src/mongo/db/s/migration_destination_manager_legacy_commands.cpp b/src/mongo/db/s/migration_destination_manager_legacy_commands.cpp index 5bbd09cdddb..d7d1a351973 100644 --- a/src/mongo/db/s/migration_destination_manager_legacy_commands.cpp +++ b/src/mongo/db/s/migration_destination_manager_legacy_commands.cpp @@ -55,9 +55,9 @@ using std::string; namespace { -class RecvChunkStartCommand : public BasicCommand { +class RecvChunkStartCommand : public ErrmsgCommandDeprecated { public: - RecvChunkStartCommand() : BasicCommand("_recvChunkStart") {} + RecvChunkStartCommand() : ErrmsgCommandDeprecated("_recvChunkStart") {} void help(std::stringstream& h) const { h << "internal"; @@ -84,11 +84,11 @@ public: out->push_back(Privilege(ResourcePattern::forClusterResource(), actions)); } - bool run(OperationContext* opCtx, - const string&, - const BSONObj& cmdObj, - string& errmsg, - BSONObjBuilder& result) { + bool errmsgRun(OperationContext* opCtx, + const string&, + const BSONObj& cmdObj, + string& errmsg, + BSONObjBuilder& result) { auto shardingState = ShardingState::get(opCtx); uassertStatusOK(shardingState->canAcceptShardedCommands()); @@ -187,7 +187,6 @@ public: bool run(OperationContext* opCtx, const string&, const BSONObj& cmdObj, - string& errmsg, BSONObjBuilder& result) { ShardingState::get(opCtx)->migrationDestinationManager()->report(result); return true; @@ -227,7 +226,6 @@ public: bool run(OperationContext* opCtx, const string&, const BSONObj& cmdObj, - string& errmsg, BSONObjBuilder& result) { auto const sessionId = uassertStatusOK(MigrationSessionId::extractFromBSON(cmdObj)); auto mdm = ShardingState::get(opCtx)->migrationDestinationManager(); @@ -274,7 +272,6 @@ public: bool run(OperationContext* opCtx, const string&, const BSONObj& cmdObj, - string& errmsg, BSONObjBuilder& result) { auto const mdm = ShardingState::get(opCtx)->migrationDestinationManager(); diff --git a/src/mongo/db/s/move_chunk_command.cpp b/src/mongo/db/s/move_chunk_command.cpp index b7d52f5058e..eb14fb36943 100644 --- a/src/mongo/db/s/move_chunk_command.cpp +++ b/src/mongo/db/s/move_chunk_command.cpp @@ -116,7 +116,6 @@ public: bool run(OperationContext* opCtx, const string& dbname, const BSONObj& cmdObj, - string& errmsg, BSONObjBuilder& result) override { auto shardingState = ShardingState::get(opCtx); uassertStatusOK(shardingState->canAcceptShardedCommands()); diff --git a/src/mongo/db/s/set_shard_version_command.cpp b/src/mongo/db/s/set_shard_version_command.cpp index 56675280e5f..c1af7de81b0 100644 --- a/src/mongo/db/s/set_shard_version_command.cpp +++ b/src/mongo/db/s/set_shard_version_command.cpp @@ -60,9 +60,9 @@ using str::stream; namespace { -class SetShardVersion : public BasicCommand { +class SetShardVersion : public ErrmsgCommandDeprecated { public: - SetShardVersion() : BasicCommand("setShardVersion") {} + SetShardVersion() : ErrmsgCommandDeprecated("setShardVersion") {} void help(std::stringstream& help) const override { help << "internal"; @@ -88,11 +88,11 @@ public: out->push_back(Privilege(ResourcePattern::forClusterResource(), actions)); } - bool run(OperationContext* opCtx, - const std::string&, - const BSONObj& cmdObj, - string& errmsg, - BSONObjBuilder& result) { + bool errmsgRun(OperationContext* opCtx, + const std::string&, + const BSONObj& cmdObj, + string& errmsg, + BSONObjBuilder& result) { uassert(ErrorCodes::IllegalOperation, "can't issue setShardVersion from 'eval'", !opCtx->getClient()->isInDirectClient()); diff --git a/src/mongo/db/s/sharding_state_command.cpp b/src/mongo/db/s/sharding_state_command.cpp index 8bb4e5fc8b3..4a2e546ac76 100644 --- a/src/mongo/db/s/sharding_state_command.cpp +++ b/src/mongo/db/s/sharding_state_command.cpp @@ -70,7 +70,6 @@ public: bool run(OperationContext* opCtx, const std::string& dbname, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { ShardingState::get(opCtx)->appendInfo(opCtx, result); return true; diff --git a/src/mongo/db/s/split_chunk_command.cpp b/src/mongo/db/s/split_chunk_command.cpp index 2830a77915d..cc3b5dba493 100644 --- a/src/mongo/db/s/split_chunk_command.cpp +++ b/src/mongo/db/s/split_chunk_command.cpp @@ -130,9 +130,9 @@ bool _checkMetadataForSuccess(OperationContext* opCtx, return true; } -class SplitChunkCommand : public BasicCommand { +class SplitChunkCommand : public ErrmsgCommandDeprecated { public: - SplitChunkCommand() : BasicCommand("splitChunk") {} + SplitChunkCommand() : ErrmsgCommandDeprecated("splitChunk") {} void help(std::stringstream& help) const override { help << "internal command usage only\n" @@ -167,11 +167,11 @@ public: return parseNsFullyQualified(dbname, cmdObj); } - bool run(OperationContext* opCtx, - const std::string& dbname, - const BSONObj& cmdObj, - std::string& errmsg, - BSONObjBuilder& result) override { + bool errmsgRun(OperationContext* opCtx, + const std::string& dbname, + const BSONObj& cmdObj, + std::string& errmsg, + BSONObjBuilder& result) override { auto shardingState = ShardingState::get(opCtx); uassertStatusOK(shardingState->canAcceptShardedCommands()); diff --git a/src/mongo/db/s/split_vector_command.cpp b/src/mongo/db/s/split_vector_command.cpp index a01287bf773..3b2581c5093 100644 --- a/src/mongo/db/s/split_vector_command.cpp +++ b/src/mongo/db/s/split_vector_command.cpp @@ -69,9 +69,9 @@ BSONObj prettyKey(const BSONObj& keyPattern, const BSONObj& key) { return key.replaceFieldNames(keyPattern).clientReadable(); } -class SplitVector : public BasicCommand { +class SplitVector : public ErrmsgCommandDeprecated { public: - SplitVector() : BasicCommand("splitVector") {} + SplitVector() : ErrmsgCommandDeprecated("splitVector") {} bool supportsWriteConcern(const BSONObj& cmd) const override { return false; @@ -111,11 +111,11 @@ public: return parseNsFullyQualified(dbname, cmdObj); } - bool run(OperationContext* opCtx, - const string& dbname, - const BSONObj& jsobj, - string& errmsg, - BSONObjBuilder& result) override { + bool errmsgRun(OperationContext* opCtx, + const string& dbname, + const BSONObj& jsobj, + string& errmsg, + BSONObjBuilder& result) override { // // 1.a We'll parse the parameters in two steps. First, make sure the we can use the split // index to get a good approximation of the size of the chunk -- without needing to diff --git a/src/mongo/db/s/unset_sharding_command.cpp b/src/mongo/db/s/unset_sharding_command.cpp index 18bf30403a5..81c6bb6c638 100644 --- a/src/mongo/db/s/unset_sharding_command.cpp +++ b/src/mongo/db/s/unset_sharding_command.cpp @@ -75,7 +75,6 @@ public: bool run(OperationContext* opCtx, const std::string& dbname, const BSONObj& cmdObj, - std::string& errmsg, BSONObjBuilder& result) override { ShardedConnectionInfo::reset(opCtx->getClient()); return true; -- cgit v1.2.1