diff options
Diffstat (limited to 'src')
8 files changed, 2 insertions, 63 deletions
diff --git a/src/mongo/db/client_metadata_propagation_egress_hook.cpp b/src/mongo/db/client_metadata_propagation_egress_hook.cpp index f6f4be55beb..30d00e29b1d 100644 --- a/src/mongo/db/client_metadata_propagation_egress_hook.cpp +++ b/src/mongo/db/client_metadata_propagation_egress_hook.cpp @@ -29,7 +29,6 @@ #include "mongo/db/client_metadata_propagation_egress_hook.h" -#include "mongo/db/server_feature_flags_gen.h" #include "mongo/db/write_block_bypass.h" #include "mongo/rpc/metadata/client_metadata.h" #include "mongo/rpc/metadata/impersonated_user_metadata.h" @@ -50,9 +49,7 @@ Status ClientMetadataPropagationEgressHook::writeRequestMetadata(OperationContex metadata->writeToMetadata(metadataBob); } - if (gFeatureFlagUserWriteBlocking.isEnabled(serverGlobalParams.featureCompatibility)) { - WriteBlockBypass::get(opCtx).writeAsMetadata(metadataBob); - } + WriteBlockBypass::get(opCtx).writeAsMetadata(metadataBob); return Status::OK(); } catch (...) { diff --git a/src/mongo/db/commands/SConscript b/src/mongo/db/commands/SConscript index c78dc3c069e..a0399b02406 100644 --- a/src/mongo/db/commands/SConscript +++ b/src/mongo/db/commands/SConscript @@ -587,7 +587,6 @@ env.Library( '$BUILD_DIR/mongo/db/s/sharding_runtime_d', '$BUILD_DIR/mongo/db/s/transaction_coordinator', '$BUILD_DIR/mongo/db/s/user_writes_recoverable_critical_section', - '$BUILD_DIR/mongo/db/server_feature_flags', '$BUILD_DIR/mongo/db/server_options_core', '$BUILD_DIR/mongo/db/serverless/shard_split_donor_service', '$BUILD_DIR/mongo/db/tenant_id', diff --git a/src/mongo/db/commands/set_feature_compatibility_version_command.cpp b/src/mongo/db/commands/set_feature_compatibility_version_command.cpp index 874771acd0c..fcbe33dc343 100644 --- a/src/mongo/db/commands/set_feature_compatibility_version_command.cpp +++ b/src/mongo/db/commands/set_feature_compatibility_version_command.cpp @@ -64,7 +64,6 @@ #include "mongo/db/repl/tenant_migration_donor_service.h" #include "mongo/db/repl/tenant_migration_recipient_service.h" #include "mongo/db/s/balancer/balancer.h" -#include "mongo/db/s/config/configsvr_coordinator_service.h" #include "mongo/db/s/config/sharding_catalog_manager.h" #include "mongo/db/s/migration_coordinator_document_gen.h" #include "mongo/db/s/range_deletion_util.h" @@ -74,7 +73,6 @@ #include "mongo/db/s/sharding_ddl_coordinator_service.h" #include "mongo/db/s/sharding_util.h" #include "mongo/db/s/transaction_coordinator_service.h" -#include "mongo/db/server_feature_flags_gen.h" #include "mongo/db/server_options.h" #include "mongo/db/serverless/shard_split_donor_service.h" #include "mongo/db/session_catalog.h" @@ -341,28 +339,6 @@ public: const auto fcvChangeRegion( FeatureCompatibilityVersion::enterFCVChangeRegion(opCtx)); - if (!gFeatureFlagUserWriteBlocking.isEnabledOnVersion(requestedVersion)) { - // TODO SERVER-65010 Remove this scope once 6.0 has branched out - - if (serverGlobalParams.clusterRole == ClusterRole::ConfigServer) { - uassert( - ErrorCodes::CannotDowngrade, - "Cannot downgrade while user write blocking is being changed", - ConfigsvrCoordinatorService::getService(opCtx) - ->areAllCoordinatorsOfTypeFinished( - opCtx, ConfigsvrCoordinatorTypeEnum::kSetUserWriteBlockMode)); - } - - DBDirectClient client(opCtx); - - const bool isBlockingUserWrites = - client.count(NamespaceString::kUserWritesCriticalSectionsNamespace) != 0; - - uassert(ErrorCodes::CannotDowngrade, - "Cannot downgrade while user write blocking is enabled.", - !isBlockingUserWrites); - } - FeatureCompatibilityVersion::updateFeatureCompatibilityVersionDocument( opCtx, actualVersion, diff --git a/src/mongo/db/commands/set_user_write_block_mode_command.cpp b/src/mongo/db/commands/set_user_write_block_mode_command.cpp index 89c9dc5c464..bd8c89dcaf8 100644 --- a/src/mongo/db/commands/set_user_write_block_mode_command.cpp +++ b/src/mongo/db/commands/set_user_write_block_mode_command.cpp @@ -32,14 +32,12 @@ #include "mongo/db/auth/authorization_session.h" #include "mongo/db/commands.h" -#include "mongo/db/commands/feature_compatibility_version.h" #include "mongo/db/commands/set_user_write_block_mode_gen.h" #include "mongo/db/index_builds_coordinator.h" #include "mongo/db/repl/repl_client_info.h" #include "mongo/db/repl/replication_coordinator.h" #include "mongo/db/s/global_user_write_block_state.h" #include "mongo/db/s/user_writes_recoverable_critical_section_service.h" -#include "mongo/db/server_feature_flags_gen.h" #include "mongo/logv2/log.h" #define MONGO_LOGV2_DEFAULT_COMPONENT ::mongo::logv2::LogComponent::kAccessControl @@ -82,13 +80,6 @@ public: // way we enable/disable user index build blocking is not concurrency-safe. stdx::lock_guard lock(_mutex); { - // TODO SERVER-65010 Remove FCV guard once 6.0 has branched out - FixedFCVRegion fixedFcvRegion(opCtx); - uassert(ErrorCodes::IllegalOperation, - "featureFlagUserWriteBlocking not enabled", - gFeatureFlagUserWriteBlocking.isEnabled( - serverGlobalParams.featureCompatibility)); - if (request().getGlobal()) { // Enabling write block mode on a replicaset requires several steps // First, we must prevent new index builds from starting diff --git a/src/mongo/db/s/config/configsvr_set_user_write_block_mode_command.cpp b/src/mongo/db/s/config/configsvr_set_user_write_block_mode_command.cpp index edb57945e97..8d18a4db889 100644 --- a/src/mongo/db/s/config/configsvr_set_user_write_block_mode_command.cpp +++ b/src/mongo/db/s/config/configsvr_set_user_write_block_mode_command.cpp @@ -32,10 +32,8 @@ #include "mongo/db/auth/authorization_session.h" #include "mongo/db/commands.h" -#include "mongo/db/commands/feature_compatibility_version.h" #include "mongo/db/s/config/configsvr_coordinator_service.h" #include "mongo/db/s/config/set_user_write_block_mode_coordinator.h" -#include "mongo/db/server_feature_flags_gen.h" #include "mongo/logv2/log.h" #include "mongo/s/grid.h" #include "mongo/s/request_types/sharded_ddl_commands_gen.h" @@ -65,13 +63,6 @@ public: const auto startBlocking = request().getGlobal(); const auto coordinatorCompletionFuture = [&]() -> SharedSemiFuture<void> { - // TODO SERVER-65010 Remove FCV guard once 6.0 has branched out - FixedFCVRegion fixedFcvRegion(opCtx); - uassert(ErrorCodes::IllegalOperation, - "featureFlagUserWriteBlocking not enabled", - gFeatureFlagUserWriteBlocking.isEnabled( - serverGlobalParams.featureCompatibility)); - SetUserWriteBlockModeCoordinatorDocument coordinatorDoc{startBlocking}; coordinatorDoc.setConfigsvrCoordinatorMetadata( {ConfigsvrCoordinatorTypeEnum::kSetUserWriteBlockMode}); diff --git a/src/mongo/db/s/config/sharding_catalog_manager_shard_operations.cpp b/src/mongo/db/s/config/sharding_catalog_manager_shard_operations.cpp index 27bbbdb74b5..c02b9e38ad0 100644 --- a/src/mongo/db/s/config/sharding_catalog_manager_shard_operations.cpp +++ b/src/mongo/db/s/config/sharding_catalog_manager_shard_operations.cpp @@ -65,7 +65,6 @@ #include "mongo/db/s/type_shard_identity.h" #include "mongo/db/s/user_writes_critical_section_document_gen.h" #include "mongo/db/s/user_writes_recoverable_critical_section_service.h" -#include "mongo/db/server_feature_flags_gen.h" #include "mongo/db/transaction_api.h" #include "mongo/db/vector_clock_mutable.h" #include "mongo/db/wire_version.h" @@ -1030,12 +1029,6 @@ void ShardingCatalogManager::_setUserWriteBlockingStateOnNewShard(OperationConte invariant(doc.getNss() == UserWritesRecoverableCriticalSectionService::kGlobalUserWritesNamespace); - // We must be running in an FCV that supports user writes blocking. This has to be true - // because it is only possible to enable user-write blocking on an FCV that supports it, and - // because it's not possible to downgrade to an FCV that doesn't support user write blocking - // is enabled. - invariant(gFeatureFlagUserWriteBlocking.isEnabled(serverGlobalParams.featureCompatibility)); - const auto makeShardsvrSetUserWriteBlockModeCommand = [](ShardsvrSetUserWriteBlockModePhaseEnum phase) -> BSONObj { ShardsvrSetUserWriteBlockMode shardsvrSetUserWriteBlockModeCmd; diff --git a/src/mongo/db/s/sharding_ddl_util.cpp b/src/mongo/db/s/sharding_ddl_util.cpp index f480a360119..c89f57f68f1 100644 --- a/src/mongo/db/s/sharding_ddl_util.cpp +++ b/src/mongo/db/s/sharding_ddl_util.cpp @@ -40,7 +40,6 @@ #include "mongo/db/s/shard_filtering_metadata_refresh.h" #include "mongo/db/s/sharding_logging.h" #include "mongo/db/s/sharding_util.h" -#include "mongo/db/server_feature_flags_gen.h" #include "mongo/db/vector_clock.h" #include "mongo/db/write_block_bypass.h" #include "mongo/logv2/log.h" @@ -200,9 +199,7 @@ std::vector<AsyncRequestsSender::Response> sendAuthenticatedCommandToShards( // the command BSONObjBuilder bob(command); rpc::writeAuthDataToImpersonatedUserMetadata(opCtx, &bob); - if (gFeatureFlagUserWriteBlocking.isEnabled(serverGlobalParams.featureCompatibility)) { - WriteBlockBypass::get(opCtx).writeAsMetadata(&bob); - } + WriteBlockBypass::get(opCtx).writeAsMetadata(&bob); auto authenticatedCommand = bob.obj(); return sharding_util::sendCommandToShards( opCtx, dbName, authenticatedCommand, shardIds, executor); diff --git a/src/mongo/db/server_feature_flags.idl b/src/mongo/db/server_feature_flags.idl index 321b7ada04e..b703d357899 100644 --- a/src/mongo/db/server_feature_flags.idl +++ b/src/mongo/db/server_feature_flags.idl @@ -41,11 +41,6 @@ feature_flags: require tenantID to be a part of NamespaceString and TenantDatabase. cpp_varname: gFeatureFlagRequireTenantID default: false - featureFlagUserWriteBlocking: - description: "Enable user write blocking for C2C replication" - cpp_varname: gFeatureFlagUserWriteBlocking - default: true - version: "6.0" featureFlagOptionalCfgSvr: description: "Optional config server for small clusters" cpp_varname: gFeatureFlagOptionalCfgSvr |