diff options
author | Judah Schvimer <judah@mongodb.com> | 2017-10-24 11:01:56 -0400 |
---|---|---|
committer | Judah Schvimer <judah@mongodb.com> | 2017-10-25 11:32:11 -0400 |
commit | 4199e981751f660c16e4909deccb9f5c7578754d (patch) | |
tree | 63cc0e1d868dc00a002fe2004a02e7172429482f | |
parent | 0935d7067068b3cb62a802a8696dd39c8d7e1944 (diff) | |
download | mongo-4199e981751f660c16e4909deccb9f5c7578754d.tar.gz |
SERVER-31608 future-proof FCV enum
26 files changed, 138 insertions, 100 deletions
diff --git a/src/mongo/db/auth/authorization_session_test.cpp b/src/mongo/db/auth/authorization_session_test.cpp index 9fb7effb64c..9a77a25de18 100644 --- a/src/mongo/db/auth/authorization_session_test.cpp +++ b/src/mongo/db/auth/authorization_session_test.cpp @@ -94,7 +94,7 @@ public: void setUp() { serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); session = transportLayer.createSession(); client = serviceContext.makeClient("testClient", session); RestrictionEnvironment::set( diff --git a/src/mongo/db/auth/role_graph_test.cpp b/src/mongo/db/auth/role_graph_test.cpp index dcbe03002ca..5a8faa3c1b3 100644 --- a/src/mongo/db/auth/role_graph_test.cpp +++ b/src/mongo/db/auth/role_graph_test.cpp @@ -775,7 +775,7 @@ TEST(RoleGraphTest, AddRoleFromDocument) { }; serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); RoleGraph graph; diff --git a/src/mongo/db/auth/user_document_parser_test.cpp b/src/mongo/db/auth/user_document_parser_test.cpp index 2eed6173e0a..ab410823dea 100644 --- a/src/mongo/db/auth/user_document_parser_test.cpp +++ b/src/mongo/db/auth/user_document_parser_test.cpp @@ -232,7 +232,7 @@ public: void setUp() { serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); user.reset(new User(UserName("spencer", "test"))); adminUser.reset(new User(UserName("admin", "admin"))); } @@ -646,7 +646,7 @@ TEST_F(V2UserDocumentParsing, V2AuthenticationRestrictionsExtraction) { TEST_F(V2UserDocumentParsing, V2AuthenticationRestrictionsExtractionAndRetreival) { serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); enableIPv6(true); ASSERT_OK(v2parser.initializeAuthenticationRestrictionsFromUserDocument( BSON("user" diff --git a/src/mongo/db/catalog/index_spec_validate_test.cpp b/src/mongo/db/catalog/index_spec_validate_test.cpp index be5c1135818..764990696c6 100644 --- a/src/mongo/db/catalog/index_spec_validate_test.cpp +++ b/src/mongo/db/catalog/index_spec_validate_test.cpp @@ -66,7 +66,8 @@ BSONObj sorted(const BSONObj& obj) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfKeyPatternIsNotAnObject) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::TypeMismatch, validateIndexSpec(kDefaultOpCtx, @@ -92,7 +93,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfKeyPatternIsNotAnObject) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfFieldRepeatedInKeyPattern) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::BadValue, validateIndexSpec(kDefaultOpCtx, @@ -112,7 +114,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfFieldRepeatedInKeyPattern) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfKeyPatternIsNotPresent) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::FailedToParse, validateIndexSpec(kDefaultOpCtx, @@ -124,7 +127,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfKeyPatternIsNotPresent) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfNameIsNotAString) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::TypeMismatch, validateIndexSpec(kDefaultOpCtx, @@ -135,7 +139,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfNameIsNotAString) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfNameIsNotPresent) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::FailedToParse, validateIndexSpec(kDefaultOpCtx, @@ -146,7 +151,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfNameIsNotPresent) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfNamespaceIsNotAString) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::TypeMismatch, validateIndexSpec(kDefaultOpCtx, @@ -168,7 +174,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfNamespaceIsNotAString) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfNamespaceIsEmptyString) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::BadValue, validateIndexSpec(kDefaultOpCtx, @@ -182,7 +189,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfNamespaceIsEmptyString) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfNamespaceDoesNotMatch) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::BadValue, validateIndexSpec(kDefaultOpCtx, @@ -207,7 +215,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfNamespaceDoesNotMatch) { TEST(IndexSpecValidateTest, ReturnsIndexSpecWithNamespaceFilledInIfItIsNotPresent) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); auto result = validateIndexSpec(kDefaultOpCtx, BSON("key" << BSON("field" << 1) << "name" @@ -234,7 +243,8 @@ TEST(IndexSpecValidateTest, ReturnsIndexSpecWithNamespaceFilledInIfItIsNotPresen TEST(IndexSpecValidateTest, ReturnsIndexSpecUnchangedIfNamespaceAndVersionArePresent) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); auto result = validateIndexSpec(kDefaultOpCtx, BSON("key" << BSON("field" << 1) << "name" @@ -259,7 +269,8 @@ TEST(IndexSpecValidateTest, ReturnsIndexSpecUnchangedIfNamespaceAndVersionArePre TEST(IndexSpecValidateTest, ReturnsAnErrorIfVersionIsNotANumber) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::TypeMismatch, validateIndexSpec(kDefaultOpCtx, @@ -281,7 +292,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfVersionIsNotANumber) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfVersionIsNotRepresentableAsInt) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::BadValue, validateIndexSpec(kDefaultOpCtx, @@ -319,7 +331,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfVersionIsNotRepresentableAsInt) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfVersionIsV0) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::CannotCreateIndex, validateIndexSpec(kDefaultOpCtx, @@ -333,7 +346,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfVersionIsV0) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfVersionIsUnsupported) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::CannotCreateIndex, validateIndexSpec(kDefaultOpCtx, @@ -359,7 +373,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfVersionIsUnsupported) { TEST(IndexSpecValidateTest, AcceptsIndexVersionsThatAreAllowedForCreation) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); auto result = validateIndexSpec(kDefaultOpCtx, BSON("key" << BSON("field" << 1) << "name" @@ -400,7 +415,8 @@ TEST(IndexSpecValidateTest, AcceptsIndexVersionsThatAreAllowedForCreation) { TEST(IndexSpecValidateTest, DefaultIndexVersionIsV2) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); auto result = validateIndexSpec(kDefaultOpCtx, BSON("key" << BSON("field" << 1) << "name" @@ -427,7 +443,8 @@ TEST(IndexSpecValidateTest, DefaultIndexVersionIsV2) { TEST(IndexSpecValidateTest, AcceptsIndexVersionV1) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); auto result = validateIndexSpec(kDefaultOpCtx, BSON("key" << BSON("field" << 1) << "name" @@ -450,7 +467,8 @@ TEST(IndexSpecValidateTest, AcceptsIndexVersionV1) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfCollationIsNotAnObject) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::TypeMismatch, validateIndexSpec(kDefaultOpCtx, @@ -480,7 +498,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfCollationIsNotAnObject) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfCollationIsEmpty) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::BadValue, validateIndexSpec(kDefaultOpCtx, @@ -494,7 +513,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfCollationIsEmpty) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfCollationIsPresentAndVersionIsLessThanV2) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); ASSERT_EQ(ErrorCodes::CannotCreateIndex, validateIndexSpec(kDefaultOpCtx, @@ -511,7 +531,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfCollationIsPresentAndVersionIsLessTh TEST(IndexSpecValidateTest, AcceptsAnyNonEmptyObjectValueForCollation) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); auto result = validateIndexSpec(kDefaultOpCtx, BSON("key" << BSON("field" << 1) << "name" @@ -562,7 +583,8 @@ TEST(IndexSpecValidateTest, AcceptsAnyNonEmptyObjectValueForCollation) { TEST(IndexSpecValidateTest, AcceptsIndexSpecIfCollationIsPresentAndVersionIsEqualToV2) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); auto result = validateIndexSpec(kDefaultOpCtx, BSON("key" << BSON("field" << 1) << "name" @@ -591,7 +613,8 @@ TEST(IndexSpecValidateTest, AcceptsIndexSpecIfCollationIsPresentAndVersionIsEqua TEST(IndexSpecValidateTest, ReturnsAnErrorIfUnknownFieldIsPresentInSpecV2) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); auto result = validateIndexSpec(kDefaultOpCtx, BSON("key" << BSON("field" << 1) << "name" @@ -607,7 +630,8 @@ TEST(IndexSpecValidateTest, ReturnsAnErrorIfUnknownFieldIsPresentInSpecV2) { TEST(IndexSpecValidateTest, ReturnsAnErrorIfUnknownFieldIsPresentInSpecV1) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); auto result = validateIndexSpec(kDefaultOpCtx, BSON("key" << BSON("field" << 1) << "name" @@ -844,7 +868,8 @@ TEST(IndexSpecCollationValidateTest, FillsInCollationFieldWithCollectionDefaultI TEST(IndexSpecPartialFilterTest, FailsIfPartialFilterIsNotAnObject) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); auto result = validateIndexSpec(kDefaultOpCtx, BSON("key" << BSON("field" << 1) << "name" @@ -858,7 +883,8 @@ TEST(IndexSpecPartialFilterTest, FailsIfPartialFilterIsNotAnObject) { TEST(IndexSpecPartialFilterTest, FailsIfPartialFilterContainsBannedFeature) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); auto result = validateIndexSpec(kDefaultOpCtx, BSON("key" << BSON("field" << 1) << "name" @@ -872,7 +898,8 @@ TEST(IndexSpecPartialFilterTest, FailsIfPartialFilterContainsBannedFeature) { TEST(IndexSpecPartialFilterTest, AcceptsValidPartialFilterExpression) { ServerGlobalParams::FeatureCompatibility featureCompatibility; - featureCompatibility.setVersion(ServerGlobalParams::FeatureCompatibility::Version::k36); + featureCompatibility.setVersion( + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); auto result = validateIndexSpec(kDefaultOpCtx, BSON("key" << BSON("field" << 1) << "name" diff --git a/src/mongo/db/commands/feature_compatibility_version.cpp b/src/mongo/db/commands/feature_compatibility_version.cpp index 0bfb943fc6b..10444bea57c 100644 --- a/src/mongo/db/commands/feature_compatibility_version.cpp +++ b/src/mongo/db/commands/feature_compatibility_version.cpp @@ -62,7 +62,7 @@ Lock::ResourceMutex FeatureCompatibilityVersion::fcvLock("featureCompatibilityVe StatusWith<ServerGlobalParams::FeatureCompatibility::Version> FeatureCompatibilityVersion::parse( const BSONObj& featureCompatibilityVersionDoc) { ServerGlobalParams::FeatureCompatibility::Version version = - ServerGlobalParams::FeatureCompatibility::Version::kUnset; + ServerGlobalParams::FeatureCompatibility::Version::kUnsetDefault34Behavior; std::string versionString; std::string targetVersionString; @@ -133,7 +133,7 @@ StatusWith<ServerGlobalParams::FeatureCompatibility::Version> FeatureCompatibili } else if (targetVersionString == FeatureCompatibilityVersionCommandParser::kVersion34) { version = ServerGlobalParams::FeatureCompatibility::Version::kDowngradingTo34; } else { - version = ServerGlobalParams::FeatureCompatibility::Version::k34; + version = ServerGlobalParams::FeatureCompatibility::Version::kFullyDowngradedTo34; } } else if (versionString == FeatureCompatibilityVersionCommandParser::kVersion36) { @@ -150,7 +150,7 @@ StatusWith<ServerGlobalParams::FeatureCompatibility::Version> FeatureCompatibili << feature_compatibility_version::kDochubLink << "."); } else { - version = ServerGlobalParams::FeatureCompatibility::Version::k36; + version = ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36; } } else { return Status(ErrorCodes::BadValue, @@ -297,7 +297,7 @@ void uassertDuringInvalidUpgradeOp(OperationContext* opCtx, return; } - if (version != ServerGlobalParams::FeatureCompatibility::Version::k36) { + if (version != ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36) { // Only check this assertion if we're completing an upgrade to 3.6. return; } @@ -346,7 +346,7 @@ void FeatureCompatibilityVersion::onInsertOrUpdate(OperationContext* opCtx, cons serverGlobalParams.featureCompatibility.setVersion(newVersion); // Close all connections from internal clients with binary versions lower than 3.6. - if (newVersion == ServerGlobalParams::FeatureCompatibility::Version::k36 || + if (newVersion == ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36 || newVersion == ServerGlobalParams::FeatureCompatibility::Version::kUpgradingTo36) { opCtx->getServiceContext()->getServiceEntryPoint()->endAllSessions( transport::Session::kLatestVersionInternalClientKeepOpen | @@ -371,7 +371,7 @@ void FeatureCompatibilityVersion::onDelete(OperationContext* opCtx, const BSONOb << FeatureCompatibilityVersionCommandParser::kVersion34; opCtx->recoveryUnit()->onCommit([]() { serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k34); + ServerGlobalParams::FeatureCompatibility::Version::kFullyDowngradedTo34); }); } @@ -388,7 +388,7 @@ void FeatureCompatibilityVersion::onDropCollection(OperationContext* opCtx) { << FeatureCompatibilityVersionCommandParser::kVersion34; opCtx->recoveryUnit()->onCommit([]() { serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k34); + ServerGlobalParams::FeatureCompatibility::Version::kFullyDowngradedTo34); }); } @@ -452,11 +452,11 @@ public: if (serverGlobalParams.featureCompatibility.isFullyUpgradedTo36()) { b.append(name, FeatureCompatibilityVersion::toString( - ServerGlobalParams::FeatureCompatibility::Version::k36)); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36)); } else { b.append(name, FeatureCompatibilityVersion::toString( - ServerGlobalParams::FeatureCompatibility::Version::k34)); + ServerGlobalParams::FeatureCompatibility::Version::kFullyDowngradedTo34)); } } diff --git a/src/mongo/db/commands/feature_compatibility_version.h b/src/mongo/db/commands/feature_compatibility_version.h index dd578f9dd6a..e1598756919 100644 --- a/src/mongo/db/commands/feature_compatibility_version.h +++ b/src/mongo/db/commands/feature_compatibility_version.h @@ -70,15 +70,15 @@ public: static StringData toString(ServerGlobalParams::FeatureCompatibility::Version version) { switch (version) { - case ServerGlobalParams::FeatureCompatibility::Version::k36: + case ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36: return FeatureCompatibilityVersionCommandParser::kVersion36; - case ServerGlobalParams::FeatureCompatibility::Version::k34: + case ServerGlobalParams::FeatureCompatibility::Version::kFullyDowngradedTo34: return FeatureCompatibilityVersionCommandParser::kVersion34; case ServerGlobalParams::FeatureCompatibility::Version::kUpgradingTo36: return FeatureCompatibilityVersionCommandParser::kVersionUpgradingTo36; case ServerGlobalParams::FeatureCompatibility::Version::kDowngradingTo34: return FeatureCompatibilityVersionCommandParser::kVersionDowngradingTo34; - case ServerGlobalParams::FeatureCompatibility::Version::kUnset: + case ServerGlobalParams::FeatureCompatibility::Version::kUnsetDefault34Behavior: return FeatureCompatibilityVersionCommandParser::kVersionUnset; default: MONGO_UNREACHABLE; diff --git a/src/mongo/db/keys_collection_cache_reader_and_updater_test.cpp b/src/mongo/db/keys_collection_cache_reader_and_updater_test.cpp index 0dbaacad30a..83ea491a30c 100644 --- a/src/mongo/db/keys_collection_cache_reader_and_updater_test.cpp +++ b/src/mongo/db/keys_collection_cache_reader_and_updater_test.cpp @@ -55,7 +55,7 @@ protected: ConfigServerTestFixture::setUp(); serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); serverGlobalParams.validateFeaturesAsMaster.store(true); auto clockSource = stdx::make_unique<ClockSourceMock>(); @@ -458,7 +458,7 @@ TEST_F(CacheUpdaterTest, ShouldNotCreateKeysWithDisableKeyGenerationFailPoint) { TEST_F(CacheUpdaterTest, ShouldNotCreateNewKeysInFeatureCompatiblityVersion34) { serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k34); + ServerGlobalParams::FeatureCompatibility::Version::kFullyDowngradedTo34); KeysCollectionCacheReaderAndUpdater updater("dummy", catalogClient(), Seconds(5)); @@ -475,7 +475,7 @@ TEST_F(CacheUpdaterTest, ShouldNotCreateNewKeysInFeatureCompatiblityVersion34) { // Increase the feature compatibility version and verify keys are found after refresh. serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); { auto keyStatus = updater.refresh(operationContext()); diff --git a/src/mongo/db/keys_collection_manager_sharding_test.cpp b/src/mongo/db/keys_collection_manager_sharding_test.cpp index 8006238a8c3..0ba9588ce50 100644 --- a/src/mongo/db/keys_collection_manager_sharding_test.cpp +++ b/src/mongo/db/keys_collection_manager_sharding_test.cpp @@ -60,7 +60,7 @@ protected: ConfigServerTestFixture::setUp(); serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); serverGlobalParams.validateFeaturesAsMaster.store(true); auto clockSource = stdx::make_unique<ClockSourceMock>(); @@ -376,7 +376,7 @@ TEST_F(KeysManagerShardedTest, HasSeenKeysIsFalseUntilKeysAreFound) { TEST_F(KeysManagerShardedTest, ShouldNotReturnKeysInFeatureCompatibilityVersion34) { serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k34); + ServerGlobalParams::FeatureCompatibility::Version::kFullyDowngradedTo34); keyManager()->startMonitoring(getServiceContext()); keyManager()->enableKeyGenerator(operationContext(), true); diff --git a/src/mongo/db/logical_session_cache_test.cpp b/src/mongo/db/logical_session_cache_test.cpp index 5e96394a515..d7f8f064f26 100644 --- a/src/mongo/db/logical_session_cache_test.cpp +++ b/src/mongo/db/logical_session_cache_test.cpp @@ -67,7 +67,7 @@ public: LogicalSessionCacheTest() : _service(std::make_shared<MockServiceLiasonImpl>()), _sessions(std::make_shared<MockSessionsCollectionImpl>()), - _fcv(EnsureFCV::Version::k36) {} + _fcv(EnsureFCV::Version::kFullyUpgradedTo36) {} void setUp() override { auto localManagerState = stdx::make_unique<AuthzManagerExternalStateMock>(); diff --git a/src/mongo/db/logical_session_id_test.cpp b/src/mongo/db/logical_session_id_test.cpp index 9e9e828372b..2f761f3d302 100644 --- a/src/mongo/db/logical_session_id_test.cpp +++ b/src/mongo/db/logical_session_id_test.cpp @@ -71,7 +71,7 @@ public: void setUp() { serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); session = transportLayer.createSession(); client = serviceContext.makeClient("testClient", session); RestrictionEnvironment::set( diff --git a/src/mongo/db/logical_time_validator_test.cpp b/src/mongo/db/logical_time_validator_test.cpp index 92ddc3213ef..1bb46ba0802 100644 --- a/src/mongo/db/logical_time_validator_test.cpp +++ b/src/mongo/db/logical_time_validator_test.cpp @@ -62,7 +62,7 @@ protected: ConfigServerTestFixture::setUp(); serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); serverGlobalParams.validateFeaturesAsMaster.store(true); auto clockSource = stdx::make_unique<ClockSourceMock>(); diff --git a/src/mongo/db/pipeline/document_source_change_stream_test.cpp b/src/mongo/db/pipeline/document_source_change_stream_test.cpp index f59545111f0..78fec65f9cc 100644 --- a/src/mongo/db/pipeline/document_source_change_stream_test.cpp +++ b/src/mongo/db/pipeline/document_source_change_stream_test.cpp @@ -77,7 +77,7 @@ class ChangeStreamStageTestNoSetup : public AggregationContextFixture { public: ChangeStreamStageTestNoSetup() : ChangeStreamStageTestNoSetup(nss) {} ChangeStreamStageTestNoSetup(NamespaceString nsString) - : AggregationContextFixture(nsString), _ensureFCV(EnsureFCV::Version::k36) {} + : AggregationContextFixture(nsString), _ensureFCV(EnsureFCV::Version::kFullyUpgradedTo36) {} private: EnsureFCV _ensureFCV; diff --git a/src/mongo/db/pipeline/document_source_lookup_test.cpp b/src/mongo/db/pipeline/document_source_lookup_test.cpp index 54e58c25b58..3ad105a4414 100644 --- a/src/mongo/db/pipeline/document_source_lookup_test.cpp +++ b/src/mongo/db/pipeline/document_source_lookup_test.cpp @@ -239,7 +239,7 @@ TEST_F(DocumentSourceLookUpTest, LiteParsedDocumentSourceLookupContainsExpectedN TEST_F(ReplDocumentSourceLookUpTest, RejectsPipelineWithChangeStreamStage) { // Temporarily set FCV to 3.6 for $changeStream. - EnsureFCV ensureFCV(EnsureFCV::Version::k36); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyUpgradedTo36); auto expCtx = getExpCtx(); NamespaceString fromNs("test", "coll"); @@ -257,7 +257,7 @@ TEST_F(ReplDocumentSourceLookUpTest, RejectsPipelineWithChangeStreamStage) { TEST_F(ReplDocumentSourceLookUpTest, RejectsSubPipelineWithChangeStreamStage) { // Temporarily set FCV to 3.6 for $changeStream. - EnsureFCV ensureFCV(EnsureFCV::Version::k36); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyUpgradedTo36); auto expCtx = getExpCtx(); NamespaceString fromNs("test", "coll"); diff --git a/src/mongo/db/pipeline/pipeline_test.cpp b/src/mongo/db/pipeline/pipeline_test.cpp index 4418e9dc9a4..cf90fd4e77e 100644 --- a/src/mongo/db/pipeline/pipeline_test.cpp +++ b/src/mongo/db/pipeline/pipeline_test.cpp @@ -1329,7 +1329,7 @@ TEST(PipelineOptimizationTest, MatchOnFmodShouldSwapWithAdjacentStage) { } TEST(PipelineOptimizationTest, ChangeStreamLookupSwapsWithIndependentMatch) { - EnsureFCV ensureFCV(EnsureFCV::Version::k36); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyUpgradedTo36); QueryTestServiceContext testServiceContext; auto opCtx = testServiceContext.makeOperationContext(); @@ -1355,7 +1355,7 @@ TEST(PipelineOptimizationTest, ChangeStreamLookupSwapsWithIndependentMatch) { } TEST(PipelineOptimizationTest, ChangeStreamLookupDoesNotSwapWithMatchOnPostImage) { - EnsureFCV ensureFCV(EnsureFCV::Version::k36); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyUpgradedTo36); QueryTestServiceContext testServiceContext; auto opCtx = testServiceContext.makeOperationContext(); @@ -1987,7 +1987,7 @@ TEST_F(PipelineInitialSourceNSTest, AggregateOneNSValidForFacetPipelineRegardles } TEST_F(PipelineInitialSourceNSTest, ChangeStreamIsValidAsFirstStage) { - EnsureFCV ensureFCV(EnsureFCV::Version::k36); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyUpgradedTo36); const std::vector<BSONObj> rawPipeline = {fromjson("{$changeStream: {}}")}; auto ctx = getExpCtx(); setMockReplicationCoordinatorOnOpCtx(ctx->opCtx); @@ -1996,7 +1996,7 @@ TEST_F(PipelineInitialSourceNSTest, ChangeStreamIsValidAsFirstStage) { } TEST_F(PipelineInitialSourceNSTest, ChangeStreamIsNotValidIfNotFirstStage) { - EnsureFCV ensureFCV(EnsureFCV::Version::k36); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyUpgradedTo36); const std::vector<BSONObj> rawPipeline = {fromjson("{$match: {custom: 'filter'}}"), fromjson("{$changeStream: {}}")}; auto ctx = getExpCtx(); @@ -2007,7 +2007,7 @@ TEST_F(PipelineInitialSourceNSTest, ChangeStreamIsNotValidIfNotFirstStage) { } TEST_F(PipelineInitialSourceNSTest, ChangeStreamIsNotValidIfNotFirstStageInFacet) { - EnsureFCV ensureFCV(EnsureFCV::Version::k36); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyUpgradedTo36); const std::vector<BSONObj> rawPipeline = {fromjson("{$match: {custom: 'filter'}}"), fromjson("{$changeStream: {}}")}; auto ctx = getExpCtx(); diff --git a/src/mongo/db/repl/idempotency_test.cpp b/src/mongo/db/repl/idempotency_test.cpp index 5801b07a0cb..d001f704508 100644 --- a/src/mongo/db/repl/idempotency_test.cpp +++ b/src/mongo/db/repl/idempotency_test.cpp @@ -194,13 +194,13 @@ void RandomizedIdempotencyTest::runIdempotencyTestCase() { TEST_F(RandomizedIdempotencyTest, CheckUpdateSequencesAreIdempotentWhenFCV34) { serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k34); + ServerGlobalParams::FeatureCompatibility::Version::kFullyDowngradedTo34); runIdempotencyTestCase(); } TEST_F(RandomizedIdempotencyTest, CheckUpdateSequencesAreIdempotentWhenFCV36) { serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); runIdempotencyTestCase(); } diff --git a/src/mongo/db/repl/oplog_fetcher_test.cpp b/src/mongo/db/repl/oplog_fetcher_test.cpp index 4b63bdc475f..35af92df177 100644 --- a/src/mongo/db/repl/oplog_fetcher_test.cpp +++ b/src/mongo/db/repl/oplog_fetcher_test.cpp @@ -281,7 +281,7 @@ TEST_F(OplogFetcherTest, FindQueryHasNoReadconcernIfTermUninitialized) { } TEST_F(OplogFetcherTest, FindQueryHasAfterOpTimeWithFeatureCompatibilityVersion34) { - EnsureFCV ensureFCV(EnsureFCV::Version::k34); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyDowngradedTo34); ASSERT(!serverGlobalParams.featureCompatibility.isFullyUpgradedTo36()); auto cmdObj = makeOplogFetcher(_createConfig(true))->getFindQuery_forTest(); auto readConcernElem = cmdObj["readConcern"]; @@ -293,7 +293,7 @@ TEST_F(OplogFetcherTest, FindQueryHasAfterOpTimeWithFeatureCompatibilityVersion3 } TEST_F(OplogFetcherTest, FindQueryHasAfterOpTimeWithFeatureCompatibilityVersion36) { - EnsureFCV ensureFCV(EnsureFCV::Version::k36); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyUpgradedTo36); ASSERT(serverGlobalParams.featureCompatibility.isFullyUpgradedTo36()); auto cmdObj = makeOplogFetcher(_createConfig(true))->getFindQuery_forTest(); auto readConcernElem = cmdObj["readConcern"]; diff --git a/src/mongo/db/repl/replication_consistency_markers_impl_test.cpp b/src/mongo/db/repl/replication_consistency_markers_impl_test.cpp index 105613c516f..69a233379ed 100644 --- a/src/mongo/db/repl/replication_consistency_markers_impl_test.cpp +++ b/src/mongo/db/repl/replication_consistency_markers_impl_test.cpp @@ -317,7 +317,7 @@ TEST_F(ReplicationConsistencyMarkersTest, OplogTruncateAfterPointUpgrade) { // Set the feature compatibility version to 3.6. serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); // Check that we see no oplog truncate after point in FCV 3.6. ASSERT(consistencyMarkers.getOplogTruncateAfterPoint(opCtx).isNull()); @@ -325,7 +325,7 @@ TEST_F(ReplicationConsistencyMarkersTest, OplogTruncateAfterPointUpgrade) { // Set the feature compatibility version to 3.4. serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k34); + ServerGlobalParams::FeatureCompatibility::Version::kFullyDowngradedTo34); // Check that we see the old oplog delete from point in FCV 3.4. ASSERT_EQ(consistencyMarkers.getOplogTruncateAfterPoint(opCtx), time1); @@ -348,7 +348,7 @@ TEST_F(ReplicationConsistencyMarkersTest, OplogTruncateAfterPointUpgrade) { // Set the feature compatibility version to 3.6. serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); // Check that after removing the old oplog delete from point, that we do not see the oplog // truncate after point in FCV 3.6. diff --git a/src/mongo/db/repl/replication_info.cpp b/src/mongo/db/repl/replication_info.cpp index f27e1608e73..3391dc3aa19 100644 --- a/src/mongo/db/repl/replication_info.cpp +++ b/src/mongo/db/repl/replication_info.cpp @@ -364,7 +364,7 @@ public: // connect. if (internalClientElement && serverGlobalParams.featureCompatibility.getVersion() == - ServerGlobalParams::FeatureCompatibility::Version::k36) { + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36) { result.append("minWireVersion", WireSpec::instance().incoming.maxWireVersion); } else { result.append("minWireVersion", WireSpec::instance().incoming.minWireVersion); diff --git a/src/mongo/db/repl/sync_tail_test.cpp b/src/mongo/db/repl/sync_tail_test.cpp index d1337ca5b20..e964e291b50 100644 --- a/src/mongo/db/repl/sync_tail_test.cpp +++ b/src/mongo/db/repl/sync_tail_test.cpp @@ -1666,7 +1666,7 @@ TEST_F(SyncTailTest, UpdateToFCVCollectionBesidesFCVDocumentSucceedsInRecovering TEST_F(SyncTailTest, UpgradeWithNoUUIDFailsInSecondary) { // Set fCV to 3.4 so the node does not create a UUID for the collection. serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k34); + ServerGlobalParams::FeatureCompatibility::Version::kFullyDowngradedTo34); auto fcvNS = NamespaceString(FeatureCompatibilityVersion::kCollection); ::mongo::repl::createCollection(_opCtx.get(), fcvNS, CollectionOptions()); diff --git a/src/mongo/db/repl/sync_tail_test_fixture.cpp b/src/mongo/db/repl/sync_tail_test_fixture.cpp index 0026f658fad..070f76dfc8c 100644 --- a/src/mongo/db/repl/sync_tail_test_fixture.cpp +++ b/src/mongo/db/repl/sync_tail_test_fixture.cpp @@ -92,7 +92,7 @@ void SyncTailTest::setUp() { _incOps = [this]() { _opsApplied++; }; serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); } void SyncTailTest::tearDown() { diff --git a/src/mongo/db/s/session_catalog_migration_destination_test.cpp b/src/mongo/db/s/session_catalog_migration_destination_test.cpp index c7ea51be2c1..99ee8eae5d8 100644 --- a/src/mongo/db/s/session_catalog_migration_destination_test.cpp +++ b/src/mongo/db/s/session_catalog_migration_destination_test.cpp @@ -84,7 +84,7 @@ class SessionCatalogMigrationDestinationTest : public ShardingMongodTestFixture public: void setUp() override { serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); serverGlobalParams.clusterRole = ClusterRole::ShardServer; ShardingMongodTestFixture::setUp(); diff --git a/src/mongo/db/server_options.h b/src/mongo/db/server_options.h index 1263e272b06..1c84b5d33ad 100644 --- a/src/mongo/db/server_options.h +++ b/src/mongo/db/server_options.h @@ -152,38 +152,45 @@ struct ServerGlobalParams { * * The legal enum (and featureCompatiblityVersion document) states are: * - * k34 - * (3.4, Unset) aka fully 3.4: Only 3.4 features are available, and new and existing storage - * engine entries use the 3.4 format + * kFullyDowngradedTo34 + * (3.4, Unset): Only 3.4 features are available, and new and existing storage + * engine entries use the 3.4 format * * kUpgradingTo36 - * (3.4, 3.6) aka upgrading: Only 3.4 features are available, but new storage engine entries - * use the 3.6 format, and existing entries may have either the - * 3.4 or 3.6 format + * (3.4, 3.6): Only 3.4 features are available, but new storage engine entries + * use the 3.6 format, and existing entries may have either the + * 3.4 or 3.6 format * - * k36 - * (3.6, Unset) aka fully 3.6: 3.6 features are available, and new and existing storage - * engine entries use the 3.6 format + * kFullyUpgradedTo36 + * (3.6, Unset): 3.6 features are available, and new and existing storage + * engine entries use the 3.6 format * * kDowngradingTo34 - * (3.4, 3.4) aka downgrading: Only 3.4 features are available and new storage engine - * entries use the 3.4 format, but existing entries may have - * either the 3.4 or 3.6 format + * (3.4, 3.4): Only 3.4 features are available and new storage engine + * entries use the 3.4 format, but existing entries may have + * either the 3.4 or 3.6 format * - * kUnset - * (Unset, Unset) aka uninitialized: This is the case on startup before the fCV document is - * loaded into memory. isVersionInitialized() will return - * false, and getVersion() will return the default (k34). + * kUnsetDefault34Behavior + * (Unset, Unset): This is the case on startup before the fCV document is + * loaded into memory. isVersionInitialized() will return + * false, and getVersion() will return the default + * (kFullyDowngradedTo34). * */ - enum class Version { k34, kUpgradingTo36, k36, kDowngradingTo34, kUnset }; + enum class Version { + kFullyDowngradedTo34, + kUpgradingTo36, + kFullyUpgradedTo36, + kDowngradingTo34, + kUnsetDefault34Behavior + }; /** * On startup, the featureCompatibilityVersion may not have been explicitly set yet. This * exposes the actual state of the featureCompatibilityVersion if it is uninitialized. */ const bool isVersionInitialized() const { - return _version.load() != Version::kUnset; + return _version.load() != Version::kUnsetDefault34Behavior; } /** @@ -192,29 +199,33 @@ struct ServerGlobalParams { */ const Version getVersion() const { Version v = _version.load(); - return (v == Version::kUnset) ? Version::k34 : v; + return (v == Version::kUnsetDefault34Behavior) ? Version::kFullyDowngradedTo34 : v; } void reset() { - _version.store(Version::k34); + _version.store(Version::kFullyDowngradedTo34); } void setVersion(Version version) { return _version.store(version); } + // Deprecated. Please use getVersion() directly instead. const bool isFullyUpgradedTo36() { - return (getVersion() == Version::k36); + return (getVersion() == Version::kFullyUpgradedTo36); } + // Deprecated. Please use getVersion() directly instead. const bool isUpgradingTo36() { return (getVersion() == Version::kUpgradingTo36); } + // Deprecated. Please use getVersion() directly instead. const bool isFullyDowngradedTo34() { - return (getVersion() == Version::k34); + return (getVersion() == Version::kFullyDowngradedTo34); } + // Deprecated. Please use getVersion() directly instead. const bool isDowngradingTo34() { return (getVersion() == Version::kDowngradingTo34); } @@ -225,7 +236,7 @@ struct ServerGlobalParams { } private: - AtomicWord<Version> _version{Version::kUnset}; + AtomicWord<Version> _version{Version::kUnsetDefault34Behavior}; } featureCompatibility; diff --git a/src/mongo/db/views/view_catalog_test.cpp b/src/mongo/db/views/view_catalog_test.cpp index d26256cf40d..a989bd11e9b 100644 --- a/src/mongo/db/views/view_catalog_test.cpp +++ b/src/mongo/db/views/view_catalog_test.cpp @@ -180,7 +180,7 @@ TEST_F(ViewCatalogFixture, CreateViewOnDifferentDatabase) { // TODO SERVER-31588: Remove FCV 3.4 validation during the 3.7 development cycle. TEST_F(ViewCatalogFixture, CreateViewWith36FeaturesSucceedsUnder36FCV) { - EnsureFCV ensureFCV(EnsureFCV::Version::k36); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyUpgradedTo36); const NamespaceString viewOn("db.coll"); @@ -229,7 +229,7 @@ TEST_F(ViewCatalogFixture, CreateViewWith36FeaturesSucceedsUnder36FCV) { // TODO SERVER-31588: Remove FCV 3.4 validation during the 3.7 development cycle. TEST_F(ViewCatalogFixture, CreateViewWith36FeaturesFailsUnder34FCV) { - EnsureFCV ensureFCV(EnsureFCV::Version::k34); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyDowngradedTo34); const NamespaceString viewName("db.view"); const NamespaceString viewOn("db.coll"); @@ -313,7 +313,7 @@ TEST_F(ViewCatalogFixture, CreateViewWithPipelineFailsOnInvalidStageName) { TEST_F(ReplViewCatalogFixture, CreateViewWithPipelineFailsOnIneligibleStage) { // Temporarily set the feature version to 3.6 for $changeStream. - EnsureFCV ensureFCV(EnsureFCV::Version::k36); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyUpgradedTo36); const NamespaceString viewName("db.view"); const NamespaceString viewOn("db.coll"); @@ -489,7 +489,7 @@ TEST_F(ViewCatalogFixture, ModifyViewOnInvalidCollectionName) { TEST_F(ReplViewCatalogFixture, ModifyViewWithPipelineFailsOnIneligibleStage) { // Temporarily set the feature version to 3.6 for $changeStream. - EnsureFCV ensureFCV(EnsureFCV::Version::k36); + EnsureFCV ensureFCV(EnsureFCV::Version::kFullyUpgradedTo36); const NamespaceString viewName("db.view"); const NamespaceString viewOn("db.coll"); diff --git a/src/mongo/dbtests/dbtests.cpp b/src/mongo/dbtests/dbtests.cpp index 01076391f9f..4fd7416d9fa 100644 --- a/src/mongo/dbtests/dbtests.cpp +++ b/src/mongo/dbtests/dbtests.cpp @@ -122,7 +122,7 @@ int dbtestsMain(int argc, char** argv, char** envp) { mongo::dbtests::initWireSpec(); mongo::runGlobalInitializersOrDie(argc, argv, envp); serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); repl::ReplSettings replSettings; replSettings.setOplogSizeBytes(10 * 1024 * 1024); ServiceContext* service = getGlobalServiceContext(); diff --git a/src/mongo/s/server.cpp b/src/mongo/s/server.cpp index aa28c33d81f..27ced948e06 100644 --- a/src/mongo/s/server.cpp +++ b/src/mongo/s/server.cpp @@ -486,7 +486,7 @@ MONGO_INITIALIZER_GENERAL(ForkServer, ("EndStartupOptionHandling"), ("default")) MONGO_INITIALIZER_WITH_PREREQUISITES(SetFeatureCompatibilityVersion36, ("EndStartupOptionStorage")) (InitializerContext* context) { mongo::serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); return Status::OK(); } diff --git a/src/mongo/shell/dbshell.cpp b/src/mongo/shell/dbshell.cpp index 72f9f060b0c..c3c30ed5b09 100644 --- a/src/mongo/shell/dbshell.cpp +++ b/src/mongo/shell/dbshell.cpp @@ -96,7 +96,7 @@ const auto kDefaultMongoURL = "mongodb://127.0.0.1:27017"_sd; MONGO_INITIALIZER_WITH_PREREQUISITES(SetFeatureCompatibilityVersion36, ("EndStartupOptionSetup")) (InitializerContext* context) { mongo::serverGlobalParams.featureCompatibility.setVersion( - ServerGlobalParams::FeatureCompatibility::Version::k36); + ServerGlobalParams::FeatureCompatibility::Version::kFullyUpgradedTo36); return Status::OK(); } } // namespace |