diff options
author | Maria van Keulen <maria.vankeulen@mongodb.com> | 2016-09-27 13:33:49 -0400 |
---|---|---|
committer | Maria van Keulen <maria.vankeulen@mongodb.com> | 2016-10-03 14:32:42 -0400 |
commit | b8a5742ef7623640eb6977f14e25649bad661208 (patch) | |
tree | 58cf810369cb85c5800718f578c9a0d939ed9e82 | |
parent | a5d9fa498c17a2aa2df6e6964ec4b241414184cd (diff) | |
download | mongo-r3.4.0-rc0.tar.gz |
SERVER-26262 Add logging for setting featureCompatibilityVersionr3.4.0-rc0
-rw-r--r-- | src/mongo/db/commands/feature_compatibility_version.cpp | 37 |
1 files changed, 23 insertions, 14 deletions
diff --git a/src/mongo/db/commands/feature_compatibility_version.cpp b/src/mongo/db/commands/feature_compatibility_version.cpp index 943f9cbe93a..a9bdc857b4f 100644 --- a/src/mongo/db/commands/feature_compatibility_version.cpp +++ b/src/mongo/db/commands/feature_compatibility_version.cpp @@ -26,6 +26,8 @@ * then also delete it in the license file. */ +#define MONGO_LOG_DEFAULT_COMPONENT ::mongo::logger::LogComponent::kCommand + #include "mongo/platform/basic.h" #include "mongo/db/commands/feature_compatibility_version.h" @@ -44,6 +46,7 @@ #include "mongo/db/storage/storage_engine.h" #include "mongo/db/write_concern_options.h" #include "mongo/rpc/get_status_from_command_result.h" +#include "mongo/util/log.h" namespace mongo { @@ -93,6 +96,18 @@ BSONObj makeUpdateCommand(StringData newVersion, BSONObj writeConcern) { return updateCmd.obj(); } + +StringData getFeatureCompatibilityVersionString( + ServerGlobalParams::FeatureCompatibility::Version version) { + switch (version) { + case ServerGlobalParams::FeatureCompatibility::Version::k34: + return FeatureCompatibilityVersion::kVersion34; + case ServerGlobalParams::FeatureCompatibility::Version::k32: + return FeatureCompatibilityVersion::kVersion32; + default: + MONGO_UNREACHABLE; + } +} } // namespace StatusWith<ServerGlobalParams::FeatureCompatibility::Version> FeatureCompatibilityVersion::parse( @@ -310,8 +325,10 @@ void FeatureCompatibilityVersion::onInsertOrUpdate(const BSONObj& doc) { idElement.String() != FeatureCompatibilityVersion::kParameterName) { return; } - serverGlobalParams.featureCompatibility.version.store( - uassertStatusOK(FeatureCompatibilityVersion::parse(doc))); + auto newVersion = uassertStatusOK(FeatureCompatibilityVersion::parse(doc)); + log() << "setting featureCompatibilityVersion to " + << getFeatureCompatibilityVersionString(newVersion); + serverGlobalParams.featureCompatibility.version.store(newVersion); } void FeatureCompatibilityVersion::onDelete(const BSONObj& doc) { @@ -320,6 +337,7 @@ void FeatureCompatibilityVersion::onDelete(const BSONObj& doc) { idElement.String() != FeatureCompatibilityVersion::kParameterName) { return; } + log() << "setting featureCompatibilityVersion to " << FeatureCompatibilityVersion::kVersion32; serverGlobalParams.featureCompatibility.version.store( ServerGlobalParams::FeatureCompatibility::Version::k32); } @@ -336,19 +354,10 @@ public: false // allowedToChangeAtRuntime ) {} - StringData featureCompatibilityVersionStr() { - switch (serverGlobalParams.featureCompatibility.version.load()) { - case ServerGlobalParams::FeatureCompatibility::Version::k34: - return FeatureCompatibilityVersion::kVersion34; - case ServerGlobalParams::FeatureCompatibility::Version::k32: - return FeatureCompatibilityVersion::kVersion32; - default: - MONGO_UNREACHABLE; - } - } - virtual void append(OperationContext* txn, BSONObjBuilder& b, const std::string& name) { - b.append(name, featureCompatibilityVersionStr()); + b.append(name, + getFeatureCompatibilityVersionString( + serverGlobalParams.featureCompatibility.version.load())); } virtual Status set(const BSONElement& newValueElement) { |