summaryrefslogtreecommitdiff
path: root/src/mongo/db
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db')
-rw-r--r--src/mongo/db/commands/feature_compatibility_version_parser.h19
-rw-r--r--src/mongo/db/server_options.h19
-rw-r--r--src/mongo/db/wire_version.h5
3 files changed, 28 insertions, 15 deletions
diff --git a/src/mongo/db/commands/feature_compatibility_version_parser.h b/src/mongo/db/commands/feature_compatibility_version_parser.h
index 8c838612d9c..791572012cc 100644
--- a/src/mongo/db/commands/feature_compatibility_version_parser.h
+++ b/src/mongo/db/commands/feature_compatibility_version_parser.h
@@ -55,22 +55,27 @@ public:
static constexpr StringData kVersionDowngradingFrom49To48 = "downgrading from 4.9 to 4.8"_sd;
static constexpr StringData kVersionUpgradingFrom48To49 = "upgrading from 4.8 to 4.9"_sd;
static constexpr StringData kVersion49 = "4.9"_sd;
+ static constexpr StringData kVersionDowngradingFrom50To44 = "downgrading from 5.0 to 4.4"_sd;
+ static constexpr StringData kVersionUpgradingFrom44To50 = "upgrading from 4.4 to 5.0"_sd;
+ static constexpr StringData kVersionDowngradingFrom50To49 = "downgrading from 5.0 to 4.9"_sd;
+ static constexpr StringData kVersionUpgradingFrom49To50 = "upgrading from 4.9 to 5.0"_sd;
+ static constexpr StringData kVersion50 = "5.0"_sd;
static constexpr StringData kVersionUnset = "Unset"_sd;
static constexpr StringData kParameterName = "featureCompatibilityVersion"_sd;
static constexpr StringData kLastLTS = kVersion44;
- static constexpr StringData kLastContinuous = kVersion48;
- static constexpr StringData kLatest = kVersion49;
- static constexpr StringData kUpgradingFromLastLTSToLatest = kVersionUpgradingFrom44To49;
- static constexpr StringData kUpgradingFromLastContinuousToLatest = kVersionUpgradingFrom48To49;
+ static constexpr StringData kLastContinuous = kVersion49;
+ static constexpr StringData kLatest = kVersion50;
+ static constexpr StringData kUpgradingFromLastLTSToLatest = kVersionUpgradingFrom44To50;
+ static constexpr StringData kUpgradingFromLastContinuousToLatest = kVersionUpgradingFrom49To50;
// kVersionUpgradingFromLastLTSToLastContinuous should assigned kVersionUnset when kLastLTS and
// kLastContinuous are equal.
static constexpr StringData kVersionUpgradingFromLastLTSToLastContinuous =
- kVersionUpgradingFrom44To48;
- static constexpr StringData kDowngradingFromLatestToLastLTS = kVersionDowngradingFrom49To44;
+ kVersionUpgradingFrom44To49;
+ static constexpr StringData kDowngradingFromLatestToLastLTS = kVersionDowngradingFrom50To44;
static constexpr StringData kDowngradingFromLatestToLastContinuous =
- kVersionDowngradingFrom49To48;
+ kVersionDowngradingFrom50To49;
static FeatureCompatibilityParams::Version parseVersion(StringData versionString);
diff --git a/src/mongo/db/server_options.h b/src/mongo/db/server_options.h
index eb308da43d6..c14b522821e 100644
--- a/src/mongo/db/server_options.h
+++ b/src/mongo/db/server_options.h
@@ -200,9 +200,11 @@ struct ServerGlobalParams {
kDowngradingFrom47To44, // { version: 4.4, targetVersion: 4.4, previousVersion: 4.7 }
kDowngradingFrom48To44, // { version: 4.4, targetVersion: 4.4, previousVersion: 4.8 }
kDowngradingFrom49To44, // { version: 4.4, targetVersion: 4.4, previousVersion: 4.9 }
+ kDowngradingFrom50To44, // { version: 4.4, targetVersion: 4.4, previousVersion: 5.0 }
kUpgradingFrom44To47, // { version: 4.4, targetVersion: 4.7 }
kUpgradingFrom44To48, // { version: 4.4, targetVersion: 4.8 }
kUpgradingFrom44To49, // { version: 4.4, targetVersion: 4.9 }
+ kUpgradingFrom44To50, // { version: 4.4, targetVersion: 5.0 }
kVersion47, // { version: 4.7 }
kDowngradingFrom48To47, // { version: 4.7, targetVersion: 4.7, previousVersion: 4.8 }
kUpgradingFrom47To48, // { version: 4.7, targetVersion: 4.8 }
@@ -210,28 +212,31 @@ struct ServerGlobalParams {
kDowngradingFrom49To48, // { version: 4.8, targetVersion: 4.8, previousVersion: 4.9 }
kUpgradingFrom48To49, // { version: 4.8, targetVersion: 4.9 }
kVersion49, // { version: 4.9 }
+ kDowngradingFrom50To49, // { version: 4.9, targetVersion: 4.9, previousVersion: 5.0 }
+ kUpgradingFrom49To50, // { version: 4.9, targetVersion: 5.0 }
+ kVersion50, // { version: 5.0 }
};
// These constants should only be used for generic FCV references. Generic references are
// FCV references that are expected to exist across LTS binary versions.
- static constexpr Version kLatest = Version::kVersion49;
- static constexpr Version kLastContinuous = Version::kVersion48;
+ static constexpr Version kLatest = Version::kVersion50;
+ static constexpr Version kLastContinuous = Version::kVersion49;
static constexpr Version kLastLTS = Version::kFullyDowngradedTo44;
// These constants should only be used for generic FCV references. Generic references are
// FCV references that are expected to exist across LTS binary versions.
// NOTE: DO NOT USE THEM FOR REGULAR FCV CHECKS.
- static constexpr Version kUpgradingFromLastLTSToLatest = Version::kUpgradingFrom44To49;
+ static constexpr Version kUpgradingFromLastLTSToLatest = Version::kUpgradingFrom44To50;
static constexpr Version kUpgradingFromLastContinuousToLatest =
- Version::kUpgradingFrom48To49;
- static constexpr Version kDowngradingFromLatestToLastLTS = Version::kDowngradingFrom49To44;
+ Version::kUpgradingFrom49To50;
+ static constexpr Version kDowngradingFromLatestToLastLTS = Version::kDowngradingFrom50To44;
static constexpr Version kDowngradingFromLatestToLastContinuous =
- Version::kDowngradingFrom49To48;
+ Version::kDowngradingFrom50To49;
// kUpgradingFromLastLTSToLastContinuous is only ever set to a valid FCV when
// kLastLTS and kLastContinuous are not equal. Otherwise, this value should be set to
// kInvalid.
static constexpr Version kUpgradingFromLastLTSToLastContinuous =
- Version::kUpgradingFrom44To48;
+ Version::kUpgradingFrom44To49;
/**
* On startup, the featureCompatibilityVersion may not have been explicitly set yet. This
diff --git a/src/mongo/db/wire_version.h b/src/mongo/db/wire_version.h
index 3185ca25dc3..45712e1c298 100644
--- a/src/mongo/db/wire_version.h
+++ b/src/mongo/db/wire_version.h
@@ -92,9 +92,12 @@ enum WireVersion {
// Supports features available from 4.9 and onwards.
WIRE_VERSION_49 = 12,
+ // Supports features available from 5.0 and onwards.
+ WIRE_VERSION_50 = 13,
+
// Set this to the highest value in this enum - it will be the default maxWireVersion for
// the WireSpec values.
- LATEST_WIRE_VERSION = WIRE_VERSION_49,
+ LATEST_WIRE_VERSION = WIRE_VERSION_50,
// Set this to LATEST_WIRE_VERSION - 1.
LAST_CONT_WIRE_VERSION = LATEST_WIRE_VERSION - 1,