From f41f4d1c8a7c2c776bfbbf0b2d0edbc413dd410f Mon Sep 17 00:00:00 2001 From: Gabriel Marks Date: Mon, 30 Jun 2025 14:39:24 -0400 Subject: [PATCH] Revert "SERVER-65769 Enable featureFlagQETextSearchPreview (#37871)" (#37929) GitOrigin-RevId: 5e1b2e62da39bfece38aea46c815fa0e4171d8e4 --- buildscripts/resmokelib/core/programs.py | 5 +++ src/mongo/db/pipeline/expression_test.cpp | 44 +++++++++++++++++++++++ src/mongo/db/server_feature_flags.idl | 3 +- 3 files changed, 50 insertions(+), 2 deletions(-) diff --git a/buildscripts/resmokelib/core/programs.py b/buildscripts/resmokelib/core/programs.py index bc71f63565b..6674943f519 100644 --- a/buildscripts/resmokelib/core/programs.py +++ b/buildscripts/resmokelib/core/programs.py @@ -515,6 +515,11 @@ def mongo_shell_program( val = str(mongo_set_parameters[key]) args.append(f"--setShellParameter={key}={val}") + # if featureFlagQETextSearchPreview is enabled in setParameter, enable it in the shell also + # TODO: SERVER-65769 remove once FF is enabled by default + if mongod_set_parameters.get("featureFlagQETextSearchPreview"): + args.append("--setShellParameter=featureFlagQETextSearchPreview=true") + # Apply the rest of the command line arguments. _apply_kwargs(args, kwargs) diff --git a/src/mongo/db/pipeline/expression_test.cpp b/src/mongo/db/pipeline/expression_test.cpp index ee157cc5ad5..6110a729a4c 100644 --- a/src/mongo/db/pipeline/expression_test.cpp +++ b/src/mongo/db/pipeline/expression_test.cpp @@ -2120,6 +2120,17 @@ TEST(ExpressionFilterTest, CorrectRedactionWithLimit) { serialized); } +// This test fails since featureFlagQETextSearchPreview is disabled by default. +// TODO SERVER-65769: Remove when feature flag is enabled by default. +TEST(ExpressionFLEStartsWithTest, FeatureFlagDisabled) { + auto expCtx = ExpressionContextForTest(); + auto vps = expCtx.variablesParseState; + { + auto expr = fromjson("{$encStrStartsWith: 12}"); + ASSERT_THROWS_CODE(Parse::Object::parseObject(expr), DBException, 168); + } +} + TEST(ExpressionFLEStartsWithTest, ParseAssertConstraints) { auto expCtx = ExpressionContextForTest(); auto vps = expCtx.variablesParseState; @@ -2270,6 +2281,17 @@ TEST(ExpressionFLEStartsWithTest, ParseBinDataPayloadRoundtrip) { ASSERT_BSONOBJ_EQ(value.getDocument().toBson(), roundTripExpr); } +// This test fails since featureFlagQETextSearchPreview is disabled by default. +// TODO SERVER-65769: Remove when feature flag is enabled by default. +TEST(ExpressionFLEEndsWithTest, FeatureFlagDisabled) { + auto expCtx = ExpressionContextForTest(); + auto vps = expCtx.variablesParseState; + { + auto expr = fromjson("{$encStrEndsWith: 12}"); + ASSERT_THROWS_CODE(Parse::Object::parseObject(expr), DBException, 168); + } +} + TEST(ExpressionFLEEndsWithTest, ParseAssertConstraints) { auto expCtx = ExpressionContextForTest(); auto vps = expCtx.variablesParseState; @@ -2420,6 +2442,17 @@ TEST(ExpressionFLEEndsWithTest, ParseBinDataPayloadRoundtrip) { ASSERT_BSONOBJ_EQ(value.getDocument().toBson(), roundTripExpr); } +// This test fails since featureFlagQETextSearchPreview is disabled by default. +// TODO SERVER-65769: Remove when feature flag is enabled by default. +TEST(ExpressionFLEStrContainsTest, FeatureFlagDisabled) { + auto expCtx = ExpressionContextForTest(); + auto vps = expCtx.variablesParseState; + { + auto expr = fromjson("{$encStrContains: 12}"); + ASSERT_THROWS_CODE(Parse::Object::parseObject(expr), DBException, 168); + } +} + TEST(ExpressionFLEStrContainsTest, ParseAssertConstraints) { auto expCtx = ExpressionContextForTest(); auto vps = expCtx.variablesParseState; @@ -2568,6 +2601,17 @@ TEST(ExpressionFLEStrContainsTest, ParseBinDataPayloadRoundtrip) { ASSERT_BSONOBJ_EQ(value.getDocument().toBson(), roundTripExpr); } +// This test fails since featureFlagQETextSearchPreview is disabled by default. +// TODO SERVER-65769: Remove when feature flag is enabled by default. +TEST(ExpressionFLEStrNormalizedEqTest, FeatureFlagDisabled) { + auto expCtx = ExpressionContextForTest(); + auto vps = expCtx.variablesParseState; + { + auto expr = fromjson("{$encStrNormalizedEq: 12}"); + ASSERT_THROWS_CODE(Parse::Object::parseObject(expr), DBException, 168); + } +} + TEST(ExpressionFLEStrNormalizedEqTest, ParseAssertConstraints) { auto expCtx = ExpressionContextForTest(); auto vps = expCtx.variablesParseState; diff --git a/src/mongo/db/server_feature_flags.idl b/src/mongo/db/server_feature_flags.idl index 6db6a0ded49..ee84a728d38 100644 --- a/src/mongo/db/server_feature_flags.idl +++ b/src/mongo/db/server_feature_flags.idl @@ -133,8 +133,7 @@ feature_flags: featureFlagQETextSearchPreview: description: "Queryable Encryption text search" cpp_varname: gFeatureFlagQETextSearchPreview - default: true - version: 8.2 + default: false fcv_gated: true featureFlagExposeClientIpInAuditLogs: description: "Expose client IP in audit logs for load-balanced connections"