Skip to content

Commit dd4368a

Browse files
mtandreiMongoDB Bot
authored andcommitted
SERVER-94735 Set the default value of 'internalQueryFrameworkControl' to 'forceClassicEngine' (#30164)
GitOrigin-RevId: f3e56838b6b9c16d9a0b71f715e3e7cc6f8a7dbf
1 parent f95fd0c commit dd4368a

File tree

13 files changed

+107
-60
lines changed

13 files changed

+107
-60
lines changed

etc/evergreen.yml

Lines changed: 23 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1289,10 +1289,10 @@ buildvariants:
12891289
- name: vector_search_auth
12901290
- name: vector_search_ssl
12911291

1292-
- &enterprise-rhel-8-64-bit-dynamic-classic-engine
1292+
- &enterprise-rhel-8-64-bit-dynamic-sbe-engine
12931293
<<: *linux_x86_dynamic_compile_variant_dependency
1294-
name: enterprise-rhel-8-64-bit-dynamic-classic-engine
1295-
display_name: "Shared Library Enterprise RHEL 8 (Classic Engine)"
1294+
name: enterprise-rhel-8-64-bit-dynamic-sbe-engine
1295+
display_name: "Shared Library Enterprise RHEL 8 (SBE)"
12961296
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
12971297
run_on:
12981298
- rhel80-small
@@ -1304,7 +1304,7 @@ buildvariants:
13041304
target_resmoke_time: 10
13051305
max_sub_suites: 5
13061306
test_flags: >-
1307-
--mongodSetParameters="{internalQueryFrameworkControl: forceClassicEngine}"
1307+
--mongodSetParameters="{internalQueryFrameworkControl: trySbeRestricted}"
13081308
large_distro_name: rhel80-medium
13091309
depends_on:
13101310
- name: archive_dist_test_debug
@@ -1315,8 +1315,8 @@ buildvariants:
13151315
# Without this we are adding extra dependencies on evergreen and it is causing strain
13161316
omit_generated_tasks: true
13171317
tasks:
1318-
- name: .aggfuzzer !.sbe_only
1319-
- name: .aggregation !.sbe_only
1318+
- name: .aggfuzzer !.column_store
1319+
- name: .aggregation !.column_store
13201320
- name: .auth
13211321
- name: .causally_consistent !.sharding
13221322
- name: .change_stream_fuzzer
@@ -1326,7 +1326,7 @@ buildvariants:
13261326
distros:
13271327
- rhel80-medium
13281328
- name: .encrypt
1329-
- name: .jscore .common !jsCore !.sbe_only
1329+
- name: .jscore .common !jsCore !.column_store
13301330
- name: .jstestfuzz !.flow_control
13311331
- name: .misc_js
13321332
- name: .multi_shard
@@ -1370,7 +1370,6 @@ buildvariants:
13701370
- name: lint_fuzzer_sanity_patch
13711371
- name: multi_stmt_txn_jscore_passthrough_with_migration_gen
13721372
- name: multiversion_gen
1373-
- name: .multiversion_sanity_check
13741373
- name: replica_sets_api_version_jscore_passthrough_gen
13751374
- name: replica_sets_reconfig_jscore_passthrough_gen
13761375
- name: replica_sets_reconfig_jscore_stepdown_passthrough_gen
@@ -1865,8 +1864,8 @@ buildvariants:
18651864
# Experimental buildvariants #
18661865
###########################################
18671866

1868-
- name: &rhel8-debug-asan-classic-engine rhel8-debug-asan-classic-engine
1869-
display_name: "* ASAN Enterprise RHEL 8 DEBUG (Classic Engine)"
1867+
- name: &rhel8-debug-asan-sbe-engine rhel8-debug-asan-sbe-engine
1868+
display_name: "* ASAN Enterprise RHEL 8 DEBUG (SBE)"
18701869
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
18711870
run_on:
18721871
- rhel80-build
@@ -1886,9 +1885,9 @@ buildvariants:
18861885
--ssl
18871886
--ocsp-stapling=off
18881887
-j$(grep -c ^processor /proc/cpuinfo)
1889-
compile_variant: *rhel8-debug-asan-classic-engine
1888+
compile_variant: *rhel8-debug-asan-sbe-engine
18901889
test_flags: >-
1891-
--mongodSetParameters="{internalQueryFrameworkControl: forceClassicEngine}"
1890+
--mongodSetParameters="{internalQueryFrameworkControl: trySbeRestricted}"
18921891
--excludeWithAnyTags=requires_fast_memory,requires_ocsp_stapling,requires_increased_memlock_limits,requires_latch_analyzer
18931892
multiversion_platform: rhel80
18941893
multiversion_platform_50_or_later: rhel8
@@ -1902,7 +1901,7 @@ buildvariants:
19021901
tasks:
19031902
- name: compile_test_benchmark_and_package_serial_TG
19041903
- name: compile_test_and_package_parallel_unittest_stream_TG
1905-
- name: .aggregation !.sbe_only
1904+
- name: .aggregation !.column_store
19061905
- name: .auth
19071906
- name: audit
19081907
- name: .benchmarks
@@ -1918,7 +1917,7 @@ buildvariants:
19181917
- name: compile_integration_and_test_parallel_stream_TG
19191918
distros:
19201919
- rhel80-large
1921-
- name: .jscore .common !.sbe_only
1920+
- name: .jscore .common !.column_store
19221921
- name: jsCore_min_batch_repeat_queries_ese_gsm
19231922
- name: jsCore_txns_large_txns_format
19241923
- name: json_schema
@@ -1990,8 +1989,8 @@ buildvariants:
19901989
- name: disk_wiredtiger
19911990
- name: generate_buildid_to_debug_symbols_mapping
19921991

1993-
- name: &rhel8-debug-ubsan-classic-engine rhel8-debug-ubsan-classic-engine
1994-
display_name: "* UBSAN Enterprise RHEL 8 DEBUG (Classic Engine)"
1992+
- name: &rhel8-debug-ubsan-sbe-engine rhel8-debug-ubsan-sbe-engine
1993+
display_name: "* UBSAN Enterprise RHEL 8 DEBUG (SBE)"
19951994
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
19961995
run_on:
19971996
- rhel80-build
@@ -2002,7 +2001,7 @@ buildvariants:
20022001
archive-mongocryptd-debug
20032002
lang_environment: LANG=C
20042003
san_options: *ubsan_options
2005-
compile_variant: *rhel8-debug-ubsan-classic-engine
2004+
compile_variant: *rhel8-debug-ubsan-sbe-engine
20062005
compile_flags: >-
20072006
--variables-files=etc/scons/mongodbtoolchain_stable_clang.vars
20082007
--dbg=on
@@ -2012,7 +2011,7 @@ buildvariants:
20122011
--ocsp-stapling=off
20132012
-j$(grep -c ^processor /proc/cpuinfo)
20142013
test_flags: >-
2015-
--mongodSetParameters="{internalQueryFrameworkControl: forceClassicEngine}"
2014+
--mongodSetParameters="{internalQueryFrameworkControl: trySbeRestricted}"
20162015
--excludeWithAnyTags=requires_ocsp_stapling,requires_increased_memlock_limits,requires_latch_analyzer
20172016
multiversion_platform: rhel80
20182017
multiversion_platform_50_or_later: rhel8
@@ -2024,7 +2023,7 @@ buildvariants:
20242023
tasks:
20252024
- name: compile_test_benchmark_and_package_serial_TG
20262025
- name: compile_test_and_package_parallel_unittest_stream_TG
2027-
- name: .aggregation !.sbe_only
2026+
- name: .aggregation !.column_store
20282027
- name: .auth
20292028
- name: audit
20302029
- name: .benchmarks
@@ -2038,7 +2037,7 @@ buildvariants:
20382037
- name: compile_integration_and_test_parallel_stream_TG
20392038
distros:
20402039
- rhel80-large
2041-
- name: .jscore .common !.sbe_only
2040+
- name: .jscore .common !.column_store
20422041
- name: jsCore_min_batch_repeat_queries_ese_gsm
20432042
- name: jsCore_txns_large_txns_format
20442043
- name: json_schema
@@ -2841,9 +2840,9 @@ buildvariants:
28412840
- name: vector_search_auth
28422841
- name: vector_search_ssl
28432842

2844-
- <<: *enterprise-rhel-8-64-bit-dynamic-classic-engine
2845-
name: &enterprise-rhel-8-64-bit-dynamic-classic-engine-query-patch-only enterprise-rhel-8-64-bit-dynamic-classic-engine-query-patch-only
2846-
display_name: "~ Shared Library Enterprise RHEL 8 Query Patch Only (Classic Engine)"
2843+
- <<: *enterprise-rhel-8-64-bit-dynamic-sbe-engine
2844+
name: &enterprise-rhel-8-64-bit-dynamic-sbe-engine-query-patch-only enterprise-rhel-8-64-bit-dynamic-sbe-engine-query-patch-only
2845+
display_name: "~ Shared Library Enterprise RHEL 8 Query Patch Only (SBE)"
28472846
cron: "0 4 * * 0" # From the ${project_weekly_cron} parameter # This is a patch-only variant but we run on mainline to pick up task history.
28482847
expansions:
28492848
<<: *enterprise-rhel-8-64-bit-dynamic-expansions
@@ -2852,7 +2851,7 @@ buildvariants:
28522851
target_resmoke_time: 30
28532852
max_sub_suites: 3
28542853
test_flags: >-
2855-
--mongodSetParameters="{internalQueryFrameworkControl: forceClassicEngine}"
2854+
--mongodSetParameters="{internalQueryFrameworkControl: trySbeRestricted}"
28562855
--excludeWithAnyTags=resource_intensive
28572856
28582857
- <<: *enterprise-rhel-8-64-bit-dynamic-all-feature-flags-required-template

etc/evergreen_nightly.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ include:
1616
- filename: etc/evergreen_yml_components/variants/ninja.yml
1717
- filename: etc/evergreen_yml_components/variants/compile_static_analysis.yml
1818
### Uncomment when using this file for a LTS or Rapid release branch. ###
19-
- filename: etc/evergreen_yml_components/variants/classic_engine.yml
19+
- filename: etc/evergreen_yml_components/variants/sbe.yml
2020
### Uncomment when using this file for a LTS or Rapid release branch. ###
2121
# TODO: (SERVER-86211) Re-enable config shard evergreen variant.
2222
# - filename: etc/evergreen_yml_components/variants/config_shard.yml

etc/evergreen_timeouts.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ overrides:
6767
- task: replica_sets_jscore_passthrough
6868
exec_timeout: 180 # 3 hours.
6969

70-
rhel8-debug-ubsan-classic-engine:
70+
rhel8-debug-ubsan-sbe-engine:
7171
- task: update_timeseries_fuzzer
7272
exec_timeout: 150 # 2.5 hours
7373

etc/evergreen_yml_components/definitions.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3880,7 +3880,7 @@ tasks:
38803880
## Standalone fuzzer for checking columnstore index correctness ##
38813881
- <<: *jstestfuzz_template
38823882
name: aggregation_columnstore_fuzzer_gen
3883-
tags: ["aggfuzzer", "common", "columnstore", "require_npm", "random_name", "sbe_only", "feature_flag_guarded"]
3883+
tags: ["aggfuzzer", "common", "require_npm", "random_name", "column_store", "feature_flag_guarded"]
38843884
commands:
38853885
- func: "generate resmoke tasks"
38863886
vars:
@@ -4746,7 +4746,7 @@ tasks:
47464746
name: aggregation_column_store_index_passthrough
47474747
# TODO SERVER-75026 Remove the 'feature_flag_guarded' tag and ensure this suite is run on all
47484748
# variants.
4749-
tags: ["aggregation", "sbe_only", "feature_flag_guarded"]
4749+
tags: ["aggregation", "column_store", "feature_flag_guarded"]
47504750
depends_on:
47514751
- name: aggregation
47524752
commands:
@@ -5536,7 +5536,7 @@ tasks:
55365536
# variants.
55375537
depends_on:
55385538
- name: jsCore
5539-
tags: ["jscore", "sbe_only", "feature_flag_guarded"]
5539+
tags: ["jscore", "column_store", "feature_flag_guarded"]
55405540
commands:
55415541
- func: "do setup"
55425542
- func: "run tests"

etc/evergreen_yml_components/variants/classic_engine.yml renamed to etc/evergreen_yml_components/variants/sbe.yml

Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Build variants for testing the classic engine.
1+
# Build variants for testing the sbe engine.
22

33
variables:
44
- &linux_x86_dynamic_compile_variant_dependency
@@ -45,10 +45,10 @@ variables:
4545
- ubsan_options: &ubsan_options UBSAN_OPTIONS="print_stacktrace=1:external_symbolizer_path=/opt/mongodbtoolchain/v4/bin/llvm-symbolizer"
4646

4747
buildvariants:
48-
- &enterprise-rhel-8-64-bit-dynamic-classic-engine
48+
- &enterprise-rhel-8-64-bit-dynamic-sbe-engine
4949
<<: *linux_x86_dynamic_compile_variant_dependency
50-
name: enterprise-rhel-8-64-bit-dynamic-classic-engine
51-
display_name: "Shared Library Enterprise RHEL 8 (Classic Engine)"
50+
name: enterprise-rhel-8-64-bit-dynamic-sbe-engine
51+
display_name: "Shared Library Enterprise RHEL 8 (SBE)"
5252
cron: "0 0 * * 0" # once a week (Sunday midnight UTC)
5353
run_on:
5454
- rhel80-small
@@ -60,7 +60,7 @@ buildvariants:
6060
target_resmoke_time: 10
6161
max_sub_suites: 5
6262
test_flags: >-
63-
--mongodSetParameters="{internalQueryFrameworkControl: forceClassicEngine}"
63+
--mongodSetParameters="{internalQueryFrameworkControl: trySbeRestricted}"
6464
--excludeWithAnyTags=requires_latch_analyzer
6565
large_distro_name: rhel80-medium
6666
depends_on:
@@ -72,8 +72,8 @@ buildvariants:
7272
# Without this we are adding extra dependencies on evergreen and it is causing strain
7373
omit_generated_tasks: true
7474
tasks:
75-
- name: .aggfuzzer !.sbe_only
76-
- name: .aggregation !.sbe_only
75+
- name: .aggfuzzer !.column_store
76+
- name: .aggregation !.column_store
7777
- name: .auth
7878
- name: .causally_consistent !.sharding
7979
- name: .change_stream_fuzzer
@@ -83,7 +83,7 @@ buildvariants:
8383
distros:
8484
- rhel80-medium
8585
- name: .encrypt
86-
- name: .jscore .common !jsCore !.sbe_only
86+
- name: .jscore .common !jsCore !.column_store
8787
- name: .jstestfuzz !.flow_control
8888
- name: .misc_js
8989
- name: .multi_shard
@@ -127,7 +127,6 @@ buildvariants:
127127
- name: lint_fuzzer_sanity_patch
128128
- name: multi_stmt_txn_jscore_passthrough_with_migration_gen
129129
- name: multiversion_gen
130-
- name: .multiversion_sanity_check
131130
- name: replica_sets_api_version_jscore_passthrough_gen
132131
- name: replica_sets_reconfig_jscore_passthrough_gen
133132
- name: replica_sets_reconfig_jscore_stepdown_passthrough_gen
@@ -152,8 +151,8 @@ buildvariants:
152151
- name: vector_search_auth
153152
- name: vector_search_ssl
154153

155-
- name: &rhel8-debug-asan-classic-engine rhel8-debug-asan-classic-engine
156-
display_name: "* ASAN Enterprise RHEL 8 DEBUG (Classic Engine)"
154+
- name: &rhel8-debug-asan-sbe-engine rhel8-debug-asan-sbe-engine
155+
display_name: "* ASAN Enterprise RHEL 8 DEBUG (SBE)"
157156
cron: "0 0 * * 2" # once a week (Tuesday midnight UTC)
158157
run_on:
159158
- rhel80-build
@@ -173,9 +172,9 @@ buildvariants:
173172
--ssl
174173
--ocsp-stapling=off
175174
-j$(grep -c ^processor /proc/cpuinfo)
176-
compile_variant: *rhel8-debug-asan-classic-engine
175+
compile_variant: *rhel8-debug-asan-sbe-engine
177176
test_flags: >-
178-
--mongodSetParameters="{internalQueryFrameworkControl: forceClassicEngine}"
177+
--mongodSetParameters="{internalQueryFrameworkControl: trySbeRestricted}"
179178
--excludeWithAnyTags=requires_fast_memory,requires_ocsp_stapling,requires_increased_memlock_limits,requires_latch_analyzer
180179
multiversion_platform: rhel80
181180
multiversion_platform_50_or_later: rhel8
@@ -189,7 +188,7 @@ buildvariants:
189188
tasks:
190189
- name: compile_test_benchmark_and_package_serial_TG
191190
- name: compile_test_and_package_parallel_unittest_stream_TG
192-
- name: .aggregation !.sbe_only
191+
- name: .aggregation !.column_store
193192
- name: .auth
194193
- name: audit
195194
- name: .benchmarks
@@ -205,7 +204,7 @@ buildvariants:
205204
- name: compile_integration_and_test_parallel_stream_TG
206205
distros:
207206
- rhel80-large
208-
- name: .jscore .common !.sbe_only
207+
- name: .jscore .common !.column_store
209208
- name: jsCore_min_batch_repeat_queries_ese_gsm
210209
- name: jsCore_txns_large_txns_format
211210
- name: json_schema
@@ -235,8 +234,8 @@ buildvariants:
235234
- name: server_selection_json_test_TG
236235
- name: generate_buildid_to_debug_symbols_mapping
237236

238-
- name: &rhel8-debug-ubsan-classic-engine rhel8-debug-ubsan-classic-engine
239-
display_name: "* UBSAN Enterprise RHEL 8 DEBUG (Classic Engine)"
237+
- name: &rhel8-debug-ubsan-sbe-engine rhel8-debug-ubsan-sbe-engine
238+
display_name: "* UBSAN Enterprise RHEL 8 DEBUG (SBE)"
240239
cron: "0 0 * * 4" # once a week (Thursday midnight UTC)
241240
run_on:
242241
- rhel80-build
@@ -247,7 +246,7 @@ buildvariants:
247246
archive-mongocryptd-debug
248247
lang_environment: LANG=C
249248
san_options: *ubsan_options
250-
compile_variant: *rhel8-debug-ubsan-classic-engine
249+
compile_variant: *rhel8-debug-ubsan-sbe-engine
251250
compile_flags: >-
252251
--variables-files=etc/scons/mongodbtoolchain_stable_clang.vars
253252
--dbg=on
@@ -257,7 +256,7 @@ buildvariants:
257256
--ocsp-stapling=off
258257
-j$(grep -c ^processor /proc/cpuinfo)
259258
test_flags: >-
260-
--mongodSetParameters="{internalQueryFrameworkControl: forceClassicEngine}"
259+
--mongodSetParameters="{internalQueryFrameworkControl: trySbeRestricted}"
261260
--excludeWithAnyTags=requires_ocsp_stapling,requires_increased_memlock_limits,requires_latch_analyzer
262261
multiversion_platform: rhel80
263262
multiversion_platform_50_or_later: rhel8
@@ -269,7 +268,7 @@ buildvariants:
269268
tasks:
270269
- name: compile_test_benchmark_and_package_serial_TG
271270
- name: compile_test_and_package_parallel_unittest_stream_TG
272-
- name: .aggregation !.sbe_only
271+
- name: .aggregation !.column_store
273272
- name: .auth
274273
- name: audit
275274
- name: .benchmarks
@@ -283,7 +282,7 @@ buildvariants:
283282
- name: compile_integration_and_test_parallel_stream_TG
284283
distros:
285284
- rhel80-large
286-
- name: .jscore .common !.sbe_only
285+
- name: .jscore .common !.column_store
287286
- name: jsCore_min_batch_repeat_queries_ese_gsm
288287
- name: jsCore_txns_large_txns_format
289288
- name: json_schema

etc/generate_subtasks_config.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,12 @@ build_variant_large_distro_exceptions:
4646
- rhel8
4747
- rhel8-debug-asan
4848
- rhel8-debug-asan-all-feature-flags
49-
- rhel8-debug-asan-classic-engine
49+
- rhel8-debug-asan-sbe-engine
5050
- rhel8-debug-aubsan-lite
5151
- rhel8-debug-suggested
5252
- rhel8-debug-ubsan
5353
- rhel8-debug-ubsan-all-feature-flags
54-
- rhel8-debug-ubsan-classic-engine
54+
- rhel8-debug-ubsan-sbe-engine
5555
- rhel-8-arm64
5656
- rhel90
5757
- rhel90-arm64

jstests/aggregation/sources/lookup/lookup_numeric_field.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"use strict";
99

1010
load("jstests/libs/analyze_plan.js"); // For getWinningPlan.
11+
load("jstests/libs/sbe_util.js"); // For checkSbeFullyEnabled.
1112

1213
const outer = db.outer;
1314
const inner = db.inner;
@@ -112,8 +113,7 @@ function testGraphLookupFieldTraversal(localField, localDoc, shouldMatchDoc, pre
112113
testLookupFieldTraversal("a.b.c.1", {a: {b: {c: [1, 3]}}}, true, ["a", "b", "c"]);
113114

114115
// TODO after SERVER-76470 this should be able to be removed.
115-
if (assert.commandWorked(db.adminCommand({getParameter: 1, internalQueryFrameworkControl: 1}))
116-
.internalQueryFrameworkControl == "forceClassicEngine") {
116+
if (checkSbeCompletelyDisabled(db)) {
117117
// These are cases where "00"-type fields are treated as an index, and SBE does not behave
118118
// this way.
119119
testLookupFieldTraversal("a.00", {a: [3]}, true, ["a"]);

0 commit comments

Comments
 (0)