summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Boros <ian.boros@mongodb.com>2023-03-16 15:26:43 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2023-03-21 15:40:07 +0000
commiteb49b1fea5972be2345dddd9b8ab2274da701edf (patch)
tree2c6f74324d94423715a0fa4066ed0ab7a5c61ac3
parent988151ae978b51b5c4c9b28424c96ab6b0a436ce (diff)
downloadmongo-eb49b1fea5972be2345dddd9b8ab2274da701edf.tar.gz
SERVER-74901 Disable CSI by default
(cherry picked from commit 7a00cd0798725c1d635885788cff9729936f6456)
-rw-r--r--buildscripts/resmokeconfig/suites/parallel.yml2
-rw-r--r--etc/evergreen.yml54
-rw-r--r--etc/evergreen_nightly.yml6
-rw-r--r--etc/evergreen_yml_components/definitions.yml10
-rw-r--r--etc/evergreen_yml_components/variants/atlas.yml4
-rw-r--r--etc/evergreen_yml_components/variants/in_memory.yml6
-rw-r--r--etc/evergreen_yml_components/variants/misc_release.yml148
-rw-r--r--etc/evergreen_yml_components/variants/sanitizer.yml6
-rw-r--r--jstests/core/columnstore/column_scan_skip_row_store_projection.js5
-rw-r--r--jstests/core/columnstore/column_store_index_compression.js2
-rw-r--r--jstests/core/columnstore/column_store_projection.js4
-rw-r--r--jstests/core/columnstore/columnstore_eligibility.js4
-rw-r--r--jstests/core/columnstore/columnstore_index.js4
-rw-r--r--jstests/core/columnstore/columnstore_index_correctness.js4
-rw-r--r--jstests/core/columnstore/columnstore_index_per_path_filters.js4
-rw-r--r--jstests/core/columnstore/columnstore_large_array_index_correctness.js5
-rw-r--r--jstests/core/columnstore/columnstore_validindex.js3
-rw-r--r--jstests/disk/wt_validate_table_logging.js32
-rw-r--r--jstests/libs/columnstore_util.js10
-rw-r--r--jstests/noPassthrough/column_scan_slow_logs.js3
-rw-r--r--jstests/noPassthrough/column_store_index_load.js3
-rw-r--r--jstests/noPassthrough/columnstore_index_persistence.js4
-rw-r--r--jstests/noPassthrough/sharded_index_projection_verbatim_persistence.js44
-rw-r--r--jstests/noPassthroughWithMongod/column_scan_explain.js4
-rw-r--r--jstests/noPassthroughWithMongod/columnstore_planning_heuristics.js5
-rw-r--r--src/mongo/db/index/columns_access_method_test.cpp3
-rw-r--r--src/mongo/db/query/query_feature_flags.idl3
27 files changed, 214 insertions, 168 deletions
diff --git a/buildscripts/resmokeconfig/suites/parallel.yml b/buildscripts/resmokeconfig/suites/parallel.yml
index 6137065f2c4..28d13aa2bbc 100644
--- a/buildscripts/resmokeconfig/suites/parallel.yml
+++ b/buildscripts/resmokeconfig/suites/parallel.yml
@@ -25,5 +25,3 @@ executor:
mongod_options:
set_parameters:
enableTestCommands: 1
- # Fully enable column scan for CSI tests. This can't be done at runtime because it interferes with other tests.
- internalQueryColumnScanMinNumColumnFilters: 0
diff --git a/etc/evergreen.yml b/etc/evergreen.yml
index 5fb035ff58b..3ef63310766 100644
--- a/etc/evergreen.yml
+++ b/etc/evergreen.yml
@@ -190,12 +190,12 @@ variables:
distros:
- windows-vsCurrent-large
- name: burn_in_tests_gen
- - name: .aggfuzzer .common
+ - name: .aggfuzzer .common !.feature_flag_guarded
- name: audit
- name: auth_audit_gen
- name: buildscripts_test
- name: causally_consistent_jscore_txns_passthrough
- - name: .encrypt !.aggregation !.gcm
+ - name: .encrypt !.aggregation !.gcm !.feature_flag_guarded
- name: external_auth
- name: external_auth_aws
- name: external_auth_windows
@@ -251,7 +251,7 @@ variables:
- name: compile_build_tools_next_TG
distros:
- rhel70
- - name: .aggfuzzer
+ - name: .aggfuzzer !.feature_flag_guarded
- name: audit
- name: auth_audit_gen
- name: auth_gen
@@ -316,7 +316,7 @@ buildvariants:
large_distro_name: rhel80-medium
compile_variant: *linux_x86_dynamic_debug_compile_variant_name
tasks:
- - name: .aggregation !.encrypt
+ - name: .aggregation !.encrypt !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: .causally_consistent !.wo_snapshot
- name: .change_streams !.secondary_reads
@@ -396,8 +396,8 @@ buildvariants:
distros:
- rhel80-xlarge
- name: test_api_version_compatibility
- - name: .aggfuzzer !.multiversion
- - name: .aggregation !.multiversion
+ - name: .aggfuzzer !.multiversion !.feature_flag_guarded
+ - name: .aggregation !.multiversion !.feature_flag_guarded
- name: audit
- name: .auth !.multiversion
- name: .causally_consistent !.sharding
@@ -624,8 +624,8 @@ buildvariants:
distros:
- rhel80-xlarge
- name: test_api_version_compatibility
- - name: .aggfuzzer !.multiversion
- - name: .aggregation !.multiversion
+ - name: .aggfuzzer !.multiversion !.feature_flag_guarded
+ - name: .aggregation !.multiversion !.feature_flag_guarded
- name: audit
- name: .auth !.multiversion
- name: .causally_consistent !.sharding
@@ -771,7 +771,7 @@ buildvariants:
- name: compile_build_tools_next_TG
distros:
- windows-vsCurrent-xlarge
- - name: .aggregation !.auth !.encrypt
+ - name: .aggregation !.auth !.encrypt !.feature_flag_guarded
- name: aggregation_expression_multiversion_fuzzer_gen
- name: aggregation_expression_optimization_fuzzer_gen
- name: auth_gen
@@ -988,8 +988,8 @@ buildvariants:
- name: compile_test_and_package_serial_TG
distros:
- windows-vsCurrent-large
- - name: .aggfuzzer
- - name: .aggregation !.auth !.encrypt !.unwind
+ - name: .aggfuzzer !.feature_flag_guarded
+ - name: .aggregation !.auth !.encrypt !.unwind !.feature_flag_guarded
- name: auth_gen
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
@@ -1082,7 +1082,7 @@ buildvariants:
tasks:
- name: compile_test_and_package_serial_TG
- name: compile_build_tools_next_TG
- - name: aggregation
+ - name: aggregation !.feature_flag_guarded
- name: auth_gen
- name: causally_consistent_jscore_txns_passthrough
- name: disk_wiredtiger
@@ -1295,8 +1295,8 @@ buildvariants:
variant: generate-tasks-for-version
tasks:
- name: burn_in_tests_gen
- - name: .aggfuzzer
- - name: .aggregation
+ - name: .aggfuzzer !.feature_flag_guarded
+ - name: .aggregation !.feature_flag_guarded
- name: audit
- name: .auth
- name: unittest_shell_hang_analyzer_gen
@@ -1398,8 +1398,8 @@ buildvariants:
distros:
- rhel80-xlarge
- name: test_api_version_compatibility
- - name: .aggfuzzer !.no_debug_mode
- - name: .aggregation !.no_debug_mode
+ - name: .aggfuzzer !.feature_flag_guarded !.no_debug_mode
+ - name: .aggregation !.feature_flag_guarded !.no_debug_mode
- name: audit
- name: .auth !.no_debug_mode
- name: .causally_consistent !.sharding
@@ -1868,7 +1868,7 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- rhel80-xlarge
- - name: .aggfuzzer
+ - name: .aggfuzzer !.feature_flag_guarded
- name: audit
- name: auth_audit_gen
- name: auth_gen
@@ -2717,8 +2717,8 @@ buildvariants:
# - name: test_api_version_compatibility # Not relevant for TSAN
# - name: burn_in_tests_gen # No burn in tests needed
- name: check_feature_flag_tags
- # - name: .aggfuzzer # Not passing
- # - name: .aggregation # Not passing
+ # - name: .aggfuzzer !.feature_flag_guarded # Not passing
+ # - name: .aggregation !.feature_flag_guarded # Not passing
- name: audit
# - name: .auth # Not passing
# - name: burn_in_tags_gen # No burn in tests needed
@@ -2825,8 +2825,8 @@ buildvariants:
compile_variant: *enterprise-rhel80-debug-complete-tsan
tasks:
- name: compile_test_and_package_serial_TG
- - name: .aggfuzzer
- - name: .aggregation
+ - name: .aggfuzzer !.feature_flag_guarded
+ - name: .aggregation !.feature_flag_guarded
- name: .auth
- name: resmoke_end2end_tests
- name: unittest_shell_hang_analyzer_gen
@@ -2972,7 +2972,7 @@ buildvariants:
- name: compile_test_and_package_parallel_dbtest_stream_TG
distros:
- rhel80-build
- - name: .aggregation !.no_async
+ - name: .aggregation !.no_async !.feature_flag_guarded
- name: .sharding .auth
- name: .sharding .causally_consistent !.wo_snapshot
- name: .concurrency .common !.kill_terminate
@@ -3014,7 +3014,7 @@ buildvariants:
- name: compile_test_and_package_parallel_dbtest_stream_TG
distros:
- rhel80-build
- - name: .aggregation !.no_async
+ - name: .aggregation !.no_async !.feature_flag_guarded
- name: .sharding .auth
- name: .sharding .causally_consistent !.wo_snapshot
- name: .concurrency .common !.kill_terminate
@@ -3053,7 +3053,7 @@ buildvariants:
- name: compile_test_and_package_parallel_dbtest_stream_TG
distros:
- rhel80-build
- - name: .aggregation !.no_async
+ - name: .aggregation !.no_async !.feature_flag_guarded
- name: .sharding .auth
- name: .sharding .causally_consistent !.wo_snapshot
- name: .concurrency .common !.kill_terminate
@@ -3097,7 +3097,7 @@ buildvariants:
- name: compile_test_and_package_parallel_dbtest_stream_TG
distros:
- rhel80-build
- - name: .aggregation !.no_async
+ - name: .aggregation !.no_async !.feature_flag_guarded
- name: .sharding .auth
- name: .sharding .causally_consistent !.wo_snapshot
- name: .concurrency .common !.kill_terminate
@@ -3141,7 +3141,7 @@ buildvariants:
- name: compile_test_and_package_parallel_dbtest_stream_TG
distros:
- rhel80-build
- - name: .aggregation !.no_async
+ - name: .aggregation !.no_async !.feature_flag_guarded
- name: .sharding .auth
- name: .sharding .causally_consistent !.wo_snapshot
- name: .concurrency .common !.kill_terminate
@@ -3178,7 +3178,7 @@ buildvariants:
distros:
- rhel80-build
patch_only: true
- - name: .aggregation !.no_async
+ - name: .aggregation !.no_async !.feature_flag_guarded
patch_only: true
- name: .sharding .auth
patch_only: true
diff --git a/etc/evergreen_nightly.yml b/etc/evergreen_nightly.yml
index 65b1d98d6f8..eb79dc402bd 100644
--- a/etc/evergreen_nightly.yml
+++ b/etc/evergreen_nightly.yml
@@ -102,7 +102,7 @@ buildvariants:
large_distro_name: rhel80-medium
compile_variant: *linux_x86_dynamic_debug_compile_variant_name
tasks:
- - name: .aggregation !.encrypt
+ - name: .aggregation !.encrypt !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: .causally_consistent !.wo_snapshot
- name: .change_streams !.secondary_reads
@@ -224,8 +224,8 @@ buildvariants:
variant: generate-tasks-for-version
tasks:
#- name: burn_in_tests_gen
- - name: .aggfuzzer
- - name: .aggregation
+ - name: .aggfuzzer !.feature_flag_guarded
+ - name: .aggregation !.feature_flag_guarded
- name: audit
- name: .auth
- name: unittest_shell_hang_analyzer_gen
diff --git a/etc/evergreen_yml_components/definitions.yml b/etc/evergreen_yml_components/definitions.yml
index d40cbb0a5b2..c47f2fc3ec4 100644
--- a/etc/evergreen_yml_components/definitions.yml
+++ b/etc/evergreen_yml_components/definitions.yml
@@ -3876,7 +3876,7 @@ tasks:
## Standalone fuzzer for checking columnstore index correctness ##
- <<: *jstestfuzz_template
name: aggregation_columnstore_fuzzer_gen
- tags: ["aggfuzzer", "common", "columnstore", "require_npm", "random_name", "sbe_only"]
+ tags: ["aggfuzzer", "common", "columnstore", "require_npm", "random_name", "sbe_only", "feature_flag_guarded"]
commands:
- func: "generate resmoke tasks"
vars:
@@ -4691,7 +4691,9 @@ tasks:
- <<: *task_template
name: aggregation_column_store_index_passthrough
- tags: ["aggregation", "sbe_only"]
+ # TODO SERVER-75026 Remove the 'feature_flag_guarded' tag and ensure this suite is run on all
+ # variants.
+ tags: ["aggregation", "sbe_only", "feature_flag_guarded"]
depends_on:
- name: aggregation
commands:
@@ -5515,9 +5517,11 @@ tasks:
- <<: *task_template
name: jsCore_column_store_indexes
+ # TODO SERVER-75026 Remove the 'feature_flag_guarded' tag and ensure this suite is run on all
+ # variants.
+ tags: ["jscore", "sbe_only", "feature_flag_guarded"]
depends_on:
- name: jsCore
- tags: ["jscore", "sbe_only"]
commands:
- func: "do setup"
- func: "run tests"
diff --git a/etc/evergreen_yml_components/variants/atlas.yml b/etc/evergreen_yml_components/variants/atlas.yml
index 6b5bfa62e3d..4fd8338623d 100644
--- a/etc/evergreen_yml_components/variants/atlas.yml
+++ b/etc/evergreen_yml_components/variants/atlas.yml
@@ -41,7 +41,7 @@ buildvariants:
- name: compile_build_tools_next_TG
distros:
- rhel70
- - name: .aggfuzzer
+ - name: .aggfuzzer !.feature_flag_guarded
- name: audit
- name: auth_audit_gen
- name: auth_gen
@@ -50,7 +50,7 @@ buildvariants:
- name: .encrypt !.sharding !.replica_sets !.aggregation !.jscore
- name: external_auth
- name: external_auth_aws
- - name: .jscore .common !.decimal !.sharding
+ - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded
- name: jsCore_txns_large_txns_format
- name: .jstestfuzz .common
- name: libunwind_tests
diff --git a/etc/evergreen_yml_components/variants/in_memory.yml b/etc/evergreen_yml_components/variants/in_memory.yml
index 56ab083b1d4..21e5335ca6e 100644
--- a/etc/evergreen_yml_components/variants/in_memory.yml
+++ b/etc/evergreen_yml_components/variants/in_memory.yml
@@ -29,8 +29,8 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- rhel80-xlarge
- - name: .aggfuzzer .common
- - name: .aggregation !.unwind !.encrypt
+ - name: .aggfuzzer .common !.feature_flag_guarded
+ - name: .aggregation !.unwind !.encrypt !.feature_flag_guarded
- name: audit
- name: .auth !.multiversion
- name: .causally_consistent !.wo_snapshot !.durable_history
@@ -108,7 +108,7 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- windows-vsCurrent-large
- - name: .aggfuzzer .common
+ - name: .aggfuzzer .common !.feature_flag_guarded
- name: audit
- name: auth_audit_gen
- name: causally_consistent_jscore_txns_passthrough
diff --git a/etc/evergreen_yml_components/variants/misc_release.yml b/etc/evergreen_yml_components/variants/misc_release.yml
index 5855bb0691e..19a4221842f 100644
--- a/etc/evergreen_yml_components/variants/misc_release.yml
+++ b/etc/evergreen_yml_components/variants/misc_release.yml
@@ -32,8 +32,8 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- amazon2-build
- - name: .aggfuzzer .common
- - name: aggregation
+ - name: .aggfuzzer .common !.feature_flag_guarded
+ - name: aggregation !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
@@ -98,8 +98,8 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- amazon2-build
- - name: .aggfuzzer .common
- - name: aggregation
+ - name: .aggfuzzer .common !.feature_flag_guarded
+ - name: aggregation !.feature_flag_guarded
- name: audit
- name: .auth !.multiversion
- name: causally_consistent_jscore_txns_passthrough
@@ -153,7 +153,7 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- amazon2-arm64-large
- - name: aggregation
+ - name: aggregation !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
@@ -220,8 +220,8 @@ buildvariants:
distros:
- amazon2-arm64-large
- name: test_api_version_compatibility
- - name: .aggfuzzer
- - name: .aggregation
+ - name: .aggfuzzer !.feature_flag_guarded
+ - name: .aggregation !.feature_flag_guarded
- name: audit
- name: .auth
- name: .causally_consistent !.sharding
@@ -246,7 +246,7 @@ buildvariants:
- name: jsCore
distros:
- amazon2-arm64-large
- - name: .jscore .common !jsCore
+ - name: .jscore .common !jsCore !.feature_flag_guarded
- name: jsCore_min_batch_repeat_queries_ese_gsm
- name: jsCore_txns_large_txns_format
- name: json_schema
@@ -386,8 +386,8 @@ buildvariants:
distros:
- amazon2022-large
- name: test_api_version_compatibility
- - name: .aggfuzzer !.multiversion
- - name: .aggregation
+ - name: .aggfuzzer !.multiversion !.feature_flag_guarded
+ - name: .aggregation !.feature_flag_guarded
- name: audit
- name: .auth !.multiversion
- name: .causally_consistent !.sharding
@@ -486,7 +486,7 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- amazon2022-arm64-large
- - name: aggregation
+ - name: aggregation !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
@@ -549,8 +549,8 @@ buildvariants:
distros:
- amazon2022-arm64-large
- name: test_api_version_compatibility
- - name: .aggfuzzer !.multiversion
- - name: .aggregation
+ - name: .aggfuzzer !.feature_flag_guarded !.multiversion
+ - name: .aggregation !.feature_flag_guarded
- name: audit
- name: .auth !.multiversion
- name: .causally_consistent !.sharding
@@ -575,7 +575,7 @@ buildvariants:
- name: jsCore
distros:
- amazon2022-arm64-large
- - name: .jscore .common !jsCore
+ - name: .jscore .common !jsCore !.feature_flag_guarded
- name: jsCore_min_batch_repeat_queries_ese_gsm
- name: jsCore_txns_large_txns_format
- name: json_schema
@@ -657,8 +657,8 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- debian10-build
- - name: .aggfuzzer .common
- - name: aggregation
+ - name: .aggfuzzer .common !.feature_flag_guarded
+ - name: aggregation !.feature_flag_guarded
- name: aggregation_auth
- name: .auth !.audit !.multiversion
- name: causally_consistent_jscore_txns_passthrough
@@ -667,7 +667,7 @@ buildvariants:
- name: concurrency_replication_causal_consistency_gen
- name: disk_wiredtiger
- name: free_monitoring
- - name: .jscore .common !.decimal
+ - name: .jscore .common !.decimal !.feature_flag_guarded
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: multiversion_gen
@@ -723,14 +723,14 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- debian10-build
- - name: .aggfuzzer .common
+ - name: .aggfuzzer .common !.feature_flag_guarded
- name: audit
- name: causally_consistent_jscore_txns_passthrough
- name: .encrypt !.replica_sets !.aggregation !.sharding !.jscore
- name: .jepsen_docker
distros:
- debian10-large
- - name: .jscore .common !.decimal !.sharding
+ - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: replica_sets_auth_gen
@@ -775,8 +775,8 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- debian11-large
- - name: .aggfuzzer .common
- - name: aggregation
+ - name: .aggfuzzer .common !.feature_flag_guarded
+ - name: aggregation !.feature_flag_guarded
- name: aggregation_auth
- name: .auth !.audit !.multiversion
- name: causally_consistent_jscore_txns_passthrough
@@ -785,7 +785,7 @@ buildvariants:
- name: concurrency_replication_causal_consistency_gen
- name: disk_wiredtiger
- name: free_monitoring
- - name: .jscore .common !.decimal
+ - name: .jscore .common !.decimal !.feature_flag_guarded
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: multiversion_gen
@@ -839,14 +839,14 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- debian11-large
- - name: .aggfuzzer .common
+ - name: .aggfuzzer .common !.feature_flag_guarded
- name: audit
- name: causally_consistent_jscore_txns_passthrough
- name: .encrypt !.replica_sets !.aggregation !.sharding !.jscore
- name: .jepsen_docker
distros:
- debian11-large
- - name: .jscore .common !.decimal !.sharding
+ - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: replica_sets_auth_gen
@@ -890,7 +890,7 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- rhel70
- - name: aggregation
+ - name: aggregation !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
@@ -991,7 +991,7 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- rhel80-build
- - name: aggregation
+ - name: aggregation !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
@@ -1059,8 +1059,8 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- rhel80-large
- - name: .aggfuzzer
- - name: .aggregation
+ - name: .aggfuzzer !.feature_flag_guarded
+ - name: .aggregation !.feature_flag_guarded
- name: audit
- name: .auth
- name: unittest_shell_hang_analyzer_gen
@@ -1168,7 +1168,7 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- rhel82-arm64-large
- - name: aggregation
+ - name: aggregation !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
@@ -1229,7 +1229,7 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- rhel82-arm64-large
- - name: .aggfuzzer !.multiversion
+ - name: .aggfuzzer !.multiversion !.feature_flag_guarded
- name: audit
- name: auth_audit_gen
- name: auth_gen
@@ -1237,7 +1237,7 @@ buildvariants:
- name: .encrypt !.sharding !.replica_sets !.aggregation !.jscore
- name: external_auth
- name: external_auth_aws
- - name: .jscore .common !.decimal !.sharding
+ - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded
- name: jsCore_txns_large_txns_format
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
@@ -1286,7 +1286,7 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- rhel90-build
- - name: aggregation
+ - name: aggregation !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
@@ -1343,7 +1343,7 @@ buildvariants:
- name: compile_build_tools_next_TG
distros:
- rhel90-large
- - name: .aggfuzzer !.multiversion
+ - name: .aggfuzzer !.feature_flag_guarded !.multiversion
- name: audit
- name: auth_audit_gen
- name: auth_gen
@@ -1471,7 +1471,7 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- rhel90-arm64-large
- - name: .aggfuzzer !.multiversion
+ - name: .aggfuzzer !.multiversion !.feature_flag_guarded
- name: audit
- name: auth_audit_gen
- name: auth_gen
@@ -1536,8 +1536,8 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- suse12-sp5-large
- - name: .aggfuzzer .common
- - name: aggregation
+ - name: .aggfuzzer .common !.feature_flag_guarded
+ - name: aggregation !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
@@ -1548,7 +1548,7 @@ buildvariants:
- name: concurrency_replication_causal_consistency_gen
- name: disk_wiredtiger
- name: free_monitoring
- - name: .jscore .common !.decimal
+ - name: .jscore .common !.decimal !.feature_flag_guarded
- name: .jstestfuzz .common
- name: multiversion_gen
- name: .logical_session_cache .one_sec
@@ -1604,11 +1604,11 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- suse12-sp5-large
- - name: .aggfuzzer .common
+ - name: .aggfuzzer .common !.feature_flag_guarded
- name: audit
- name: causally_consistent_jscore_txns_passthrough
- name: .encrypt !.replica_sets !.aggregation !.sharding !.jscore
- - name: .jscore .common !.decimal !.sharding
+ - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: replica_sets_auth_gen
@@ -1660,11 +1660,11 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- suse15-build
- - name: .aggfuzzer .common !.multiversion
+ - name: .aggfuzzer .common !.multiversion !.feature_flag_guarded
- name: audit
- name: causally_consistent_jscore_txns_passthrough
- name: .encrypt !.replica_sets !.aggregation !.sharding !.jscore
- - name: .jscore .common !.decimal !.sharding
+ - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: replica_sets_auth_gen
@@ -1709,8 +1709,8 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- suse15-build
- - name: .aggfuzzer .common !.multiversion
- - name: aggregation
+ - name: .aggfuzzer .common !.multiversion !.feature_flag_guarded
+ - name: aggregation !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
@@ -1718,7 +1718,7 @@ buildvariants:
- name: concurrency_replication_causal_consistency_gen
- name: disk_wiredtiger
- name: free_monitoring
- - name: .jscore .common !.decimal
+ - name: .jscore .common !.decimal !.feature_flag_guarded
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: multiversion_gen
@@ -1766,8 +1766,8 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- ubuntu1804-build
- - name: .aggfuzzer .common
- - name: aggregation
+ - name: .aggfuzzer .common !.feature_flag_guarded
+ - name: aggregation !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: .misc_js
- name: .concurrency .common
@@ -1850,7 +1850,7 @@ buildvariants:
- ubuntu1804-build
- name: .crypt
- name: .publish_crypt
- - name: .aggfuzzer .common
+ - name: .aggfuzzer .common !.feature_flag_guarded
- name: audit
- name: causally_consistent_jscore_txns_passthrough
- name: .encrypt !.aggregation !.replica_sets !.sharding !.jscore
@@ -1859,7 +1859,7 @@ buildvariants:
- name: .jepsen
distros:
- ubuntu1804-build
- - name: .jscore .common !.decimal !.sharding
+ - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded
- name: jsCore_auth
- name: .jstestfuzz .common
- name: libunwind_tests
@@ -1918,7 +1918,7 @@ buildvariants:
compile_variant: enterprise-ubuntu1804-arm64
tasks:
- name: compile_test_and_package_serial_no_unittests_TG
- - name: aggregation
+ - name: aggregation !.feature_flag_guarded
- name: aggregation_wildcard_fuzzer_gen
- name: .auth !.audit !.multiversion !.jscore
- name: causally_consistent_jscore_txns_passthrough
@@ -1926,7 +1926,7 @@ buildvariants:
- name: .concurrency .common
- name: concurrency_replication_causal_consistency_gen
- name: fle
- - name: .jscore .common !.auth
+ - name: .jscore .common !.auth !.feature_flag_guarded
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: replica_sets_gen
@@ -2012,8 +2012,8 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- ubuntu2204-large
- - name: .aggfuzzer .common !.multiversion
- - name: aggregation
+ - name: .aggfuzzer .common !.multiversion !.feature_flag_guarded
+ - name: aggregation !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: .misc_js
- name: .concurrency .common
@@ -2067,8 +2067,8 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- ubuntu2004-large
- - name: .aggfuzzer .common !.multiversion
- - name: aggregation
+ - name: .aggfuzzer .common !.multiversion !.feature_flag_guarded
+ - name: aggregation !.feature_flag_guarded
- name: .auth !.audit !.multiversion
- name: .misc_js
- name: .concurrency .common
@@ -2136,13 +2136,13 @@ buildvariants:
- ubuntu2004-large
- name: .crypt
- name: .publish_crypt
- - name: .aggfuzzer .common !.multiversion
+ - name: .aggfuzzer .common !.multiversion !.feature_flag_guarded
- name: audit
- name: causally_consistent_jscore_txns_passthrough
- name: .encrypt !.aggregation !.replica_sets !.sharding !.jscore
- name: external_auth
- name: external_auth_aws
- - name: .jscore .common !.decimal !.sharding
+ - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded
- name: jsCore_auth
- name: .jstestfuzz .common
- name: libunwind_tests
@@ -2202,13 +2202,13 @@ buildvariants:
- ubuntu2204-large
- name: .crypt
- name: .publish_crypt
- - name: .aggfuzzer .common !.multiversion
+ - name: .aggfuzzer .common !.multiversion !.feature_flag_guarded
- name: audit
- name: causally_consistent_jscore_txns_passthrough
- name: .encrypt !.aggregation !.replica_sets !.sharding !.jscore
- name: external_auth
- name: external_auth_aws
- - name: .jscore .common !.decimal !.sharding
+ - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded
- name: jsCore_auth
- name: .jstestfuzz .common
- name: libunwind_tests
@@ -2262,7 +2262,7 @@ buildvariants:
compile_variant: enterprise-ubuntu2004-arm64
tasks:
- name: compile_test_and_package_serial_no_unittests_TG
- - name: aggregation
+ - name: aggregation !.feature_flag_guarded
- name: aggregation_wildcard_fuzzer_gen
- name: .auth !.audit !.multiversion !.jscore
- name: causally_consistent_jscore_txns_passthrough
@@ -2270,7 +2270,7 @@ buildvariants:
- name: .concurrency .common
- name: concurrency_replication_causal_consistency_gen
- name: fle
- - name: .jscore .common !.auth
+ - name: .jscore .common !.auth !.feature_flag_guarded
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: replica_sets_gen
@@ -2354,7 +2354,7 @@ buildvariants:
compile_variant: enterprise-ubuntu2204-arm64
tasks:
- name: compile_test_and_package_serial_no_unittests_TG
- - name: aggregation
+ - name: aggregation !.feature_flag_guarded
- name: aggregation_wildcard_fuzzer_gen
- name: .auth !.audit !.multiversion !.jscore
- name: causally_consistent_jscore_txns_passthrough
@@ -2362,7 +2362,7 @@ buildvariants:
- name: .concurrency .common
- name: concurrency_replication_causal_consistency_gen
- name: fle
- - name: .jscore .common !.auth
+ - name: .jscore .common !.auth !.feature_flag_guarded
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: replica_sets_gen
@@ -2449,8 +2449,8 @@ buildvariants:
- name: compile_test_and_package_serial_no_unittests_TG
distros:
- windows-vsCurrent-large
- - name: .aggfuzzer
- - name: .aggregation !.auth !.encrypt !.unwind
+ - name: .aggfuzzer !.feature_flag_guarded
+ - name: .aggregation !.auth !.encrypt !.unwind !.feature_flag_guarded
- name: auth_gen
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
@@ -2462,7 +2462,7 @@ buildvariants:
- name: .concurrency .common
- name: disk_wiredtiger
- name: free_monitoring
- - name: .jscore .common !.auth
+ - name: .jscore .common !.auth !.feature_flag_guarded
- name: json_schema
- name: .jstestfuzz !.initsync !.flow_control !.stepdowns
- name: multiversion_gen
@@ -2523,8 +2523,8 @@ buildvariants:
- name: compile_test_and_package_serial_TG
distros:
- windows-vsCurrent-large
- - name: .aggfuzzer
- - name: .aggregation !.auth !.encrypt !.unwind
+ - name: .aggfuzzer !.feature_flag_guarded
+ - name: .aggregation !.auth !.encrypt !.unwind !.feature_flag_guarded
- name: auth_gen
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
@@ -2539,7 +2539,7 @@ buildvariants:
- windows-vsCurrent-large
- name: .publish_crypt
- name: disk_wiredtiger
- - name: .jscore .common !.auth
+ - name: .jscore .common !.auth !.feature_flag_guarded
- name: json_schema
- name: .jstestfuzz !.initsync !.flow_control !.stepdowns
- name: multiversion_gen
@@ -2582,7 +2582,7 @@ buildvariants:
tasks:
- name: compile_test_and_package_serial_TG
- name: compile_build_tools_next_TG
- - name: .aggregation !.auth !.encrypt !.unwind
+ - name: .aggregation !.auth !.encrypt !.unwind !.feature_flag_guarded
- name: auth_gen
- name: .causally_consistent !.sharding
- name: .change_streams !.secondary_reads
@@ -2591,7 +2591,7 @@ buildvariants:
- name: disk_wiredtiger
- name: free_monitoring
- name: initial_sync_fuzzer_gen
- - name: .jscore .common !.auth
+ - name: .jscore .common !.auth !.feature_flag_guarded
- name: jsCore_txns_large_txns_format
- name: .jstestfuzz .causal
- name: .jstestfuzz .interrupt
@@ -2636,7 +2636,7 @@ buildvariants:
tasks:
- name: compile_test_and_package_serial_TG
- name: compile_build_tools_next_TG
- - name: .aggregation !.auth !.encrypt !.unwind
+ - name: .aggregation !.auth !.encrypt !.unwind !.feature_flag_guarded
- name: auth_gen
- name: .causally_consistent !.sharding
- name: .change_streams !.secondary_reads
@@ -2645,7 +2645,7 @@ buildvariants:
- name: disk_wiredtiger
- name: free_monitoring
- name: initial_sync_fuzzer_gen
- - name: .jscore .common !.auth
+ - name: .jscore .common !.auth !.feature_flag_guarded
- name: jsCore_txns_large_txns_format
- name: .jstestfuzz .causal
- name: .jstestfuzz .interrupt
@@ -2702,7 +2702,7 @@ buildvariants:
- name: causally_consistent_jscore_txns_passthrough
# TODO: SERVER-66945 Re-enable ESE on enterprise macos
# - name: .encrypt !.replica_sets !.sharding !.aggregation !.jscore
- - name: .jscore .common !.decimal !.sharding
+ - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: mqlrun
@@ -2746,7 +2746,7 @@ buildvariants:
- name: auth_audit_gen
- name: causally_consistent_jscore_txns_passthrough
- name: .encrypt !.replica_sets !.sharding !.aggregation !.jscore
- - name: .jscore .common !.decimal !.sharding
+ - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: mqlrun
diff --git a/etc/evergreen_yml_components/variants/sanitizer.yml b/etc/evergreen_yml_components/variants/sanitizer.yml
index c79880181c9..0eede32032d 100644
--- a/etc/evergreen_yml_components/variants/sanitizer.yml
+++ b/etc/evergreen_yml_components/variants/sanitizer.yml
@@ -32,7 +32,7 @@ buildvariants:
compile_variant: rhel80-asan
tasks:
- name: compile_test_and_package_serial_TG
- - name: .aggfuzzer .common
+ - name: .aggfuzzer .common !.feature_flag_guarded
- name: free_monitoring
- name: .jstestfuzz !.initsync
@@ -76,7 +76,7 @@ buildvariants:
compile_variant: rhel80-debug-asan
tasks:
- name: compile_test_benchmark_and_package_serial_TG
- - name: .aggregation
+ - name: .aggregation !.feature_flag_guarded
- name: .auth
- name: audit
- name: .benchmarks
@@ -158,7 +158,7 @@ buildvariants:
compile_variant: rhel80-debug-ubsan
tasks:
- name: compile_test_benchmark_and_package_serial_TG
- - name: .aggregation
+ - name: .aggregation !.feature_flag_guarded
- name: .auth
- name: audit
- name: .benchmarks
diff --git a/jstests/core/columnstore/column_scan_skip_row_store_projection.js b/jstests/core/columnstore/column_scan_skip_row_store_projection.js
index 8124af3e446..29d1268d571 100644
--- a/jstests/core/columnstore/column_scan_skip_row_store_projection.js
+++ b/jstests/core/columnstore/column_scan_skip_row_store_projection.js
@@ -3,6 +3,9 @@
* above a columnscan stage.
*
* @tags: [
+ * # Column store indexes are still under a feature flag and require full SBE.
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
* # explain is not supported in transactions
* does_not_support_transactions,
* requires_pipeline_optimization,
@@ -10,8 +13,6 @@
* assumes_read_concern_unchanged,
* # explain will be different in a sharded collection
* assumes_unsharded_collection,
- * # column store row store expression skipping is new in 6.2.
- * requires_fcv_62,
* # Columnstore tests set server parameters to disable columnstore query planning heuristics -
* # 1) server parameters are stored in-memory only so are not transferred onto the recipient,
* # 2) server parameters may not be set in stepdown passthroughs because it is a command that may
diff --git a/jstests/core/columnstore/column_store_index_compression.js b/jstests/core/columnstore/column_store_index_compression.js
index 52b74a23a10..2f77b53378f 100644
--- a/jstests/core/columnstore/column_store_index_compression.js
+++ b/jstests/core/columnstore/column_store_index_compression.js
@@ -6,8 +6,8 @@
* requires_collstats,
*
* # Column store indexes are still under a feature flag and require full SBE.
- * uses_column_store_index,
* featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
*
* # In passthrough suites, this test makes direct connections to mongod instances that compose
* # the passthrough fixture in order to perform additional validation. Tenant migration,
diff --git a/jstests/core/columnstore/column_store_projection.js b/jstests/core/columnstore/column_store_projection.js
index 1b50e4a1917..c7cb1a0b2a7 100644
--- a/jstests/core/columnstore/column_store_projection.js
+++ b/jstests/core/columnstore/column_store_projection.js
@@ -2,7 +2,9 @@
* Test column stores indexes that use a "columnstoreProjection" or "prefix.$**" notation to limit
* indexed data to a subset of the document namespace.
* @tags: [
- * requires_fcv_63,
+ * # Column store indexes are still under a feature flag and require full SBE.
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
* # Runs explain on an aggregate command which is only compatible with readConcern local.
* assumes_read_concern_unchanged,
* # Columnstore tests set server parameters to disable columnstore query planning heuristics -
diff --git a/jstests/core/columnstore/columnstore_eligibility.js b/jstests/core/columnstore/columnstore_eligibility.js
index 791d9929608..19ff6a3ea57 100644
--- a/jstests/core/columnstore/columnstore_eligibility.js
+++ b/jstests/core/columnstore/columnstore_eligibility.js
@@ -1,7 +1,9 @@
/**
* Tests the eligibility of certain queries to use a columnstore index.
* @tags: [
- * requires_fcv_63,
+ * # Column store indexes are still under a feature flag and require full SBE.
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
* # Refusing to run a test that issues an aggregation command with explain because it may return
* # incomplete results if interrupted by a stepdown.
* does_not_support_stepdowns,
diff --git a/jstests/core/columnstore/columnstore_index.js b/jstests/core/columnstore/columnstore_index.js
index 76fd02cfc7b..8d68700593c 100644
--- a/jstests/core/columnstore/columnstore_index.js
+++ b/jstests/core/columnstore/columnstore_index.js
@@ -1,7 +1,9 @@
/**
* Tests some basic use cases and functionality of a columnstore index.
* @tags: [
- * requires_fcv_63,
+ * # Column store indexes are still under a feature flag and require full SBE.
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
*
* # Uses $indexStats which is not supported inside a transaction.
* does_not_support_transactions,
diff --git a/jstests/core/columnstore/columnstore_index_correctness.js b/jstests/core/columnstore/columnstore_index_correctness.js
index 4f28432aa07..66398ea26f5 100644
--- a/jstests/core/columnstore/columnstore_index_correctness.js
+++ b/jstests/core/columnstore/columnstore_index_correctness.js
@@ -1,7 +1,9 @@
/**
* Testing of just the query layer's integration for columnar index.
* @tags: [
- * requires_fcv_63,
+ * # Column store indexes are still under a feature flag and require full SBE.
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
* # Runs explain on an aggregate command which is only compatible with readConcern local.
* assumes_read_concern_unchanged,
* # Columnstore tests set server parameters to disable columnstore query planning heuristics -
diff --git a/jstests/core/columnstore/columnstore_index_per_path_filters.js b/jstests/core/columnstore/columnstore_index_per_path_filters.js
index 0c81532ea79..c01556b797e 100644
--- a/jstests/core/columnstore/columnstore_index_per_path_filters.js
+++ b/jstests/core/columnstore/columnstore_index_per_path_filters.js
@@ -3,7 +3,9 @@
* might be pushed down into the column scan stage.
*
* @tags: [
- * requires_fcv_63,
+ * # Column store indexes are still under a feature flag and require full SBE.
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
* # Runs explain on an aggregate command which is only compatible with readConcern local.
* assumes_read_concern_unchanged,
* # Columnstore tests set server parameters to disable columnstore query planning heuristics -
diff --git a/jstests/core/columnstore/columnstore_large_array_index_correctness.js b/jstests/core/columnstore/columnstore_large_array_index_correctness.js
index 14b9d948a6f..5a0f06984d5 100644
--- a/jstests/core/columnstore/columnstore_large_array_index_correctness.js
+++ b/jstests/core/columnstore/columnstore_large_array_index_correctness.js
@@ -1,6 +1,9 @@
/**
* Testing of just the query layer's integration for columnar indexes that encode large arrays.
* @tags: [
+ * # Column store indexes are still under a feature flag and require full SBE.
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
* # Columnstore tests set server parameters to disable columnstore query planning heuristics -
* # 1) server parameters are stored in-memory only so are not transferred onto the recipient,
* # 2) server parameters may not be set in stepdown passthroughs because it is a command that may
@@ -8,8 +11,6 @@
* tenant_migration_incompatible,
* does_not_support_stepdowns,
* not_allowed_with_security_token,
-
- * requires_fcv_63,
* ]
*/
(function() {
diff --git a/jstests/core/columnstore/columnstore_validindex.js b/jstests/core/columnstore/columnstore_validindex.js
index 2e3436089c0..7b86e97edda 100644
--- a/jstests/core/columnstore/columnstore_validindex.js
+++ b/jstests/core/columnstore/columnstore_validindex.js
@@ -1,7 +1,8 @@
/**
* Tests parsing and validation of columnstore indexes.
* @tags: [
- * requires_fcv_63,
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
* # Uses index building in background.
* requires_background_index,
* # Columnstore tests set server parameters to disable columnstore query planning heuristics -
diff --git a/jstests/disk/wt_validate_table_logging.js b/jstests/disk/wt_validate_table_logging.js
index 571491a3be2..939280feeb8 100644
--- a/jstests/disk/wt_validate_table_logging.js
+++ b/jstests/disk/wt_validate_table_logging.js
@@ -8,15 +8,21 @@
(function() {
'use strict';
+load("jstests/libs/columnstore_util.js"); // For setUpServerForColumnStoreIndexTest.
+
let conn = MongoRunner.runMongod();
const dbpath = conn.dbpath;
const dbName = jsTestName();
const collName = 'coll';
+const csiEnabled = setUpServerForColumnStoreIndexTest(conn.getDB(dbName));
+
const create = function(conn) {
assert.commandWorked(conn.getDB(dbName).createCollection(collName));
- assert.commandWorked(conn.getDB(dbName)[collName].createIndex({'$**': "columnstore"}));
+ if (csiEnabled) {
+ assert.commandWorked(conn.getDB(dbName)[collName].createIndex({'$**': "columnstore"}));
+ }
};
const collUri = function(conn) {
@@ -55,14 +61,16 @@ const primary = replTest.getPrimary();
// Run validate as a replica set, which will expect the tables to not be logged.
let res = assert.commandWorked(primary.getDB(dbName).runCommand({validate: collName}));
assert(!res.valid);
-assert.eq(res.errors.length, 3);
+assert.eq(res.errors.length, csiEnabled ? 3 : 2);
checkLog.containsJson(primary, 6898101, {uri: collUri(primary), expected: false});
checkLog.containsJson(
primary, 6898101, {index: '_id_', uri: indexUri(primary, '_id_'), expected: false});
-checkLog.containsJson(
- primary,
- 6898101,
- {index: '$**_columnstore', uri: indexUri(primary, '$**_columnstore'), expected: false});
+if (csiEnabled) {
+ checkLog.containsJson(
+ primary,
+ 6898101,
+ {index: '$**_columnstore', uri: indexUri(primary, '$**_columnstore'), expected: false});
+}
// Create the collection and indexes as a replica set, which will cause the tables to not be logged.
assert.commandWorked(primary.getDB(dbName).runCommand({drop: collName}));
@@ -74,13 +82,15 @@ conn = MongoRunner.runMongod(nodeOptions);
// Run validate as a standalone, which will expect the tables to be logged.
res = assert.commandWorked(conn.getDB(dbName).runCommand({validate: collName}));
assert(!res.valid);
-assert.eq(res.errors.length, 3);
+assert.eq(res.errors.length, csiEnabled ? 3 : 2);
checkLog.containsJson(conn, 6898101, {uri: collUri(conn), expected: true});
checkLog.containsJson(conn, 6898101, {index: '_id_', uri: indexUri(conn, '_id_'), expected: true});
-checkLog.containsJson(
- conn,
- 6898101,
- {index: '$**_columnstore', uri: indexUri(conn, '$**_columnstore'), expected: true});
+if (csiEnabled) {
+ checkLog.containsJson(
+ conn,
+ 6898101,
+ {index: '$**_columnstore', uri: indexUri(conn, '$**_columnstore'), expected: true});
+}
MongoRunner.stopMongod(conn, null, {skipValidation: true});
}());
diff --git a/jstests/libs/columnstore_util.js b/jstests/libs/columnstore_util.js
index 3247e7fcb1f..39393bb297f 100644
--- a/jstests/libs/columnstore_util.js
+++ b/jstests/libs/columnstore_util.js
@@ -88,9 +88,13 @@ function setUpServerForColumnStoreIndexTest(db) {
return false;
}
- // Parallel tests cannot set these server parameters during execution due to the side effect of
- // clearing the SBE plan cache, so the parallel test suite overrides this for us up front.
- if (!(TestData || {}).isParallelTest) {
+ // TODO SERVER-75026: Re-enable CSI in parallel tests.
+ // Note that we should not fully enable columnscans during the parallel tests due to the side
+ // effect of clearing the SBE plan cache. Fully enabling column scans should only be done
+ // in non-parallel environments.
+ if ((TestData || {}).isParallelTest) {
+ return false;
+ } else {
fullyEnableColumnScan(nodes);
}
diff --git a/jstests/noPassthrough/column_scan_slow_logs.js b/jstests/noPassthrough/column_scan_slow_logs.js
index 60354fcfb12..eeaa8fe3618 100644
--- a/jstests/noPassthrough/column_scan_slow_logs.js
+++ b/jstests/noPassthrough/column_scan_slow_logs.js
@@ -2,7 +2,8 @@
* Tests to ensure that COLUMN_SCAN plan and scanned columns appear in slow query log lines when
* the columstore index is the winning plan.
* @tags: [
- * requires_fcv_63,
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
* ]
*/
(function() {
diff --git a/jstests/noPassthrough/column_store_index_load.js b/jstests/noPassthrough/column_store_index_load.js
index 1c45a5e7257..952c2f2f788 100644
--- a/jstests/noPassthrough/column_store_index_load.js
+++ b/jstests/noPassthrough/column_store_index_load.js
@@ -4,10 +4,11 @@
* Indexes are validated by comparing query results that use the index with results from a control
* query that uses a collection scan.
* @tags: [
- * requires_fcv_63,
* # We could potentially need to resume an index build in the event of a stepdown, which is not
* # yet implemented.
* does_not_support_stepdowns,
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
* ]
*/
(function() {
diff --git a/jstests/noPassthrough/columnstore_index_persistence.js b/jstests/noPassthrough/columnstore_index_persistence.js
index 0ee33f70999..afdb7a235b3 100644
--- a/jstests/noPassthrough/columnstore_index_persistence.js
+++ b/jstests/noPassthrough/columnstore_index_persistence.js
@@ -4,9 +4,11 @@
* as well as the createIndex response when a columnstore index is created.
*
* @tags: [
- * requires_fcv_63,
* requires_persistence,
* requires_replication,
+ * # column store indexes are still under a feature flag and require full sbe
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
* ]
*/
diff --git a/jstests/noPassthrough/sharded_index_projection_verbatim_persistence.js b/jstests/noPassthrough/sharded_index_projection_verbatim_persistence.js
index f68210a55b9..042916e6f80 100644
--- a/jstests/noPassthrough/sharded_index_projection_verbatim_persistence.js
+++ b/jstests/noPassthrough/sharded_index_projection_verbatim_persistence.js
@@ -12,6 +12,8 @@
(function() {
"use strict";
+load("jstests/libs/columnstore_util.js"); // For setUpServerForColumnStoreIndexTest.
+
const st = new ShardingTest({shards: 3, rs: {nodes: 1}});
const dbName = "test";
const collName = "user";
@@ -48,24 +50,30 @@ for (const catEntry of shardCatalogs) {
assert.eq(catEntry.wildcardProjection, kProjectionDoc, shardCatalogs);
}
-// Creates a columnstore index with a columnstoreProjection that normalization would change and
-// verifies the persisted projection doc on each shard matches the original, unnormalized version.
-const kColumnstoreIndexName = "cs_index";
-st.s.getCollection(ns).createIndex(
- {"$**": "columnstore"}, {name: kColumnstoreIndexName, columnstoreProjection: kProjectionDoc});
-shardCatalogs =
- st.s.getCollection(ns)
- .aggregate([
- {$listCatalog: {}},
- {$unwind: "$md.indexes"},
- {$match: {"md.indexes.spec.name": kColumnstoreIndexName}},
- {$project: {shard: 1, columnstoreProjection: "$md.indexes.spec.columnstoreProjection"}}
- ])
- .toArray();
-assert.eq(shardCatalogs.length, 3, shardCatalogs);
-for (const catEntry of shardCatalogs) {
- assert.eq(catEntry.columnstoreProjection, kProjectionDoc, shardCatalogs);
+if (setUpServerForColumnStoreIndexTest(st.s.getDB(dbName))) {
+ // Creates a columnstore index with a columnstoreProjection that normalization would change
+ // and verifies the persisted projection doc on each shard matches the original,
+ // unnormalized version.
+ const kColumnstoreIndexName = "cs_index";
+ st.s.getCollection(ns).createIndex(
+ {"$**": "columnstore"},
+ {name: kColumnstoreIndexName, columnstoreProjection: kProjectionDoc});
+ shardCatalogs =
+ st.s.getCollection(ns)
+ .aggregate([
+ {$listCatalog: {}},
+ {$unwind: "$md.indexes"},
+ {$match: {"md.indexes.spec.name": kColumnstoreIndexName}},
+ {
+ $project:
+ {shard: 1, columnstoreProjection: "$md.indexes.spec.columnstoreProjection"}
+ }
+ ])
+ .toArray();
+ assert.eq(shardCatalogs.length, 3, shardCatalogs);
+ for (const catEntry of shardCatalogs) {
+ assert.eq(catEntry.columnstoreProjection, kProjectionDoc, shardCatalogs);
+ }
}
-
st.stop();
})();
diff --git a/jstests/noPassthroughWithMongod/column_scan_explain.js b/jstests/noPassthroughWithMongod/column_scan_explain.js
index 52e4d789503..fe3e78190aa 100644
--- a/jstests/noPassthroughWithMongod/column_scan_explain.js
+++ b/jstests/noPassthroughWithMongod/column_scan_explain.js
@@ -1,7 +1,9 @@
/**
* Tests the explain support for the COLUMN_SCAN stage.
* @tags: [
- * requires_fcv_63,
+ * # Column store indexes are still under a feature flag and require full sbe.
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
* ]
*/
(function() {
diff --git a/jstests/noPassthroughWithMongod/columnstore_planning_heuristics.js b/jstests/noPassthroughWithMongod/columnstore_planning_heuristics.js
index 386ae3d57ad..d2f704d4729 100644
--- a/jstests/noPassthroughWithMongod/columnstore_planning_heuristics.js
+++ b/jstests/noPassthroughWithMongod/columnstore_planning_heuristics.js
@@ -2,8 +2,9 @@
* Testing of the query planner heuristics for determining whether a collection is eligible for
* column scan.
* @tags: [
- * # column store indexes are still under a feature flag
- * featureFlagColumnstoreIndexes
+ * # Column store indexes are still under a feature flag and require full sbe.
+ * featureFlagColumnstoreIndexes,
+ * featureFlagSbeFull,
* ]
*/
(function() {
diff --git a/src/mongo/db/index/columns_access_method_test.cpp b/src/mongo/db/index/columns_access_method_test.cpp
index bf5e10de1c7..50d201e6100 100644
--- a/src/mongo/db/index/columns_access_method_test.cpp
+++ b/src/mongo/db/index/columns_access_method_test.cpp
@@ -91,6 +91,8 @@ protected:
}
void setUp() override {
+ flagController.emplace("featureFlagColumnstoreIndexes", true);
+
CatalogTestFixture::setUp();
ASSERT_OK(storageInterface()->createCollection(operationContext(), _nss, {}));
_coll.emplace(operationContext(), _nss, MODE_X);
@@ -171,6 +173,7 @@ private:
bool _cursorNeedsSeek;
boost::optional<FullCellView> _cell;
SplitCellView _splitCellView;
+ boost::optional<RAIIServerParameterControllerForTest> flagController;
};
TEST_F(ColumnsAccessMethodTest, Dollars) {
diff --git a/src/mongo/db/query/query_feature_flags.idl b/src/mongo/db/query/query_feature_flags.idl
index 579b2dd7977..dbb952a43d4 100644
--- a/src/mongo/db/query/query_feature_flags.idl
+++ b/src/mongo/db/query/query_feature_flags.idl
@@ -68,8 +68,7 @@ feature_flags:
featureFlagColumnstoreIndexes:
description: "Enables creation of a new columnstore index type"
cpp_varname: gFeatureFlagColumnstoreIndexes
- default: true
- version: 6.3
+ default: false
featureFlagServerlessChangeStreams:
description: "Feature flag to enable reading change events from the change collection rather than the oplog"