summaryrefslogtreecommitdiff
path: root/jstests/core/timeseries
diff options
context:
space:
mode:
authorDan Larkin-York <dan.larkin-york@mongodb.com>2022-09-07 12:32:47 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-09-07 13:19:43 +0000
commit0eb043641e902e48f319f1b89a6739a46bb80147 (patch)
tree0cb6678cf4b0346f9fbd00c5867ffb87e38e2dcf /jstests/core/timeseries
parentcd8f093c066e3a7a236857214eef50c61c8c47a5 (diff)
downloadmongo-0eb043641e902e48f319f1b89a6739a46bb80147.tar.gz
SERVER-69168 Clean up time series test tagging and suite exclusions
Diffstat (limited to 'jstests/core/timeseries')
-rw-r--r--jstests/core/timeseries/bucket_granularity.js6
-rw-r--r--jstests/core/timeseries/bucket_timestamp_rounding.js6
-rw-r--r--jstests/core/timeseries/bucket_unpacking_with_sort.js13
-rw-r--r--jstests/core/timeseries/bucket_unpacking_with_sort_plan_cache.js17
-rw-r--r--jstests/core/timeseries/clustered_index_crud.js1
-rw-r--r--jstests/core/timeseries/nondefault_collation.js3
-rw-r--r--jstests/core/timeseries/partialFilterExpression_with_internalBucketGeoWithin.js10
-rw-r--r--jstests/core/timeseries/timeseries_bucket_index.js5
-rw-r--r--jstests/core/timeseries/timeseries_bucket_limit_count.js5
-rw-r--r--jstests/core/timeseries/timeseries_bucket_limit_time_range.js5
-rw-r--r--jstests/core/timeseries/timeseries_bucket_manual_removal.js5
-rw-r--r--jstests/core/timeseries/timeseries_bucket_rename.js4
-rw-r--r--jstests/core/timeseries/timeseries_bucket_spanning_epoch.js6
-rw-r--r--jstests/core/timeseries/timeseries_collation.js5
-rw-r--r--jstests/core/timeseries/timeseries_collmod.js11
-rw-r--r--jstests/core/timeseries/timeseries_create_collection.js4
-rw-r--r--jstests/core/timeseries/timeseries_create_invalid_view.js4
-rw-r--r--jstests/core/timeseries/timeseries_delete.js5
-rw-r--r--jstests/core/timeseries/timeseries_delete_concurrent.js13
-rw-r--r--jstests/core/timeseries/timeseries_delete_hint.js12
-rw-r--r--jstests/core/timeseries/timeseries_expire_collmod.js4
-rw-r--r--jstests/core/timeseries/timeseries_explicit_unpack_bucket.js2
-rw-r--r--jstests/core/timeseries/timeseries_find.js17
-rw-r--r--jstests/core/timeseries/timeseries_geonear.js9
-rw-r--r--jstests/core/timeseries/timeseries_geonear_edge_case_measurements.js9
-rw-r--r--jstests/core/timeseries/timeseries_geonear_measurements.js16
-rw-r--r--jstests/core/timeseries/timeseries_geonear_random_measurements.js9
-rw-r--r--jstests/core/timeseries/timeseries_graph_lookup.js3
-rw-r--r--jstests/core/timeseries/timeseries_hint.js10
-rw-r--r--jstests/core/timeseries/timeseries_id_index.js4
-rw-r--r--jstests/core/timeseries/timeseries_id_range.js8
-rw-r--r--jstests/core/timeseries/timeseries_index.js5
-rw-r--r--jstests/core/timeseries/timeseries_index_collation.js5
-rw-r--r--jstests/core/timeseries/timeseries_index_partial.js8
-rw-r--r--jstests/core/timeseries/timeseries_index_skipped_record_tracker.js4
-rw-r--r--jstests/core/timeseries/timeseries_index_spec.js5
-rw-r--r--jstests/core/timeseries/timeseries_index_stats.js6
-rw-r--r--jstests/core/timeseries/timeseries_index_ttl_partial.js12
-rw-r--r--jstests/core/timeseries/timeseries_index_use.js10
-rw-r--r--jstests/core/timeseries/timeseries_insert.js5
-rw-r--r--jstests/core/timeseries/timeseries_insert_after_delete.js5
-rw-r--r--jstests/core/timeseries/timeseries_insert_after_update.js6
-rw-r--r--jstests/core/timeseries/timeseries_internal_bounded_sort.js9
-rw-r--r--jstests/core/timeseries/timeseries_internal_bounded_sort_compound.js9
-rw-r--r--jstests/core/timeseries/timeseries_internal_bounded_sort_compound_mixed_types.js9
-rw-r--r--jstests/core/timeseries/timeseries_internal_bounded_sort_overflow.js9
-rw-r--r--jstests/core/timeseries/timeseries_internal_bucket_geo_within.js14
-rw-r--r--jstests/core/timeseries/timeseries_large_measurements.js8
-rw-r--r--jstests/core/timeseries/timeseries_lastpoint.js15
-rw-r--r--jstests/core/timeseries/timeseries_lastpoint_top.js15
-rw-r--r--jstests/core/timeseries/timeseries_list_collections.js3
-rw-r--r--jstests/core/timeseries/timeseries_list_collections_filter_name.js3
-rw-r--r--jstests/core/timeseries/timeseries_lookup.js6
-rw-r--r--jstests/core/timeseries/timeseries_merge.js3
-rw-r--r--jstests/core/timeseries/timeseries_metadata.js5
-rw-r--r--jstests/core/timeseries/timeseries_metric_index_2dsphere.js9
-rw-r--r--jstests/core/timeseries/timeseries_metric_index_ascending_descending.js9
-rw-r--r--jstests/core/timeseries/timeseries_metric_index_compound.js9
-rw-r--r--jstests/core/timeseries/timeseries_metric_index_hashed.js5
-rw-r--r--jstests/core/timeseries/timeseries_metric_index_wildcard.js5
-rw-r--r--jstests/core/timeseries/timeseries_min_max.js5
-rw-r--r--jstests/core/timeseries/timeseries_out.js5
-rw-r--r--jstests/core/timeseries/timeseries_out_of_order.js5
-rw-r--r--jstests/core/timeseries/timeseries_predicates.js6
-rw-r--r--jstests/core/timeseries/timeseries_predicates_with_projections.js5
-rw-r--r--jstests/core/timeseries/timeseries_project.js5
-rw-r--r--jstests/core/timeseries/timeseries_resume_after.js5
-rw-r--r--jstests/core/timeseries/timeseries_show_record_id.js4
-rw-r--r--jstests/core/timeseries/timeseries_simple.js5
-rw-r--r--jstests/core/timeseries/timeseries_sparse.js5
-rw-r--r--jstests/core/timeseries/timeseries_sparse_index.js12
-rw-r--r--jstests/core/timeseries/timeseries_special_indexes_metadata.js6
-rw-r--r--jstests/core/timeseries/timeseries_text_geonear_disallowed.js4
-rw-r--r--jstests/core/timeseries/timeseries_union_with.js5
-rw-r--r--jstests/core/timeseries/timeseries_update.js7
-rw-r--r--jstests/core/timeseries/timeseries_update_concurrent.js17
-rw-r--r--jstests/core/timeseries/timeseries_update_hint.js19
77 files changed, 320 insertions, 247 deletions
diff --git a/jstests/core/timeseries/bucket_granularity.js b/jstests/core/timeseries/bucket_granularity.js
index 96640c9b991..fe7fcae97ed 100644
--- a/jstests/core/timeseries/bucket_granularity.js
+++ b/jstests/core/timeseries/bucket_granularity.js
@@ -2,15 +2,11 @@
* Tests correctness of time-series bucket granularity configuration.
*
* @tags: [
- * assumes_no_implicit_collection_creation_after_drop,
- * assumes_unsharded_collection,
* # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
* # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
* requires_timeseries,
- * # Same goes for tenant migrations.
- * tenant_migration_incompatible,
* ]
*/
diff --git a/jstests/core/timeseries/bucket_timestamp_rounding.js b/jstests/core/timeseries/bucket_timestamp_rounding.js
index fdd97c29a8a..a33c0adbbc3 100644
--- a/jstests/core/timeseries/bucket_timestamp_rounding.js
+++ b/jstests/core/timeseries/bucket_timestamp_rounding.js
@@ -2,15 +2,11 @@
* Tests correctness of time-series bucket granularity configuration.
*
* @tags: [
- * assumes_no_implicit_collection_creation_after_drop,
- * assumes_unsharded_collection,
* # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
* # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
* requires_timeseries,
- * # Same goes for tenant migrations.
- * tenant_migration_incompatible,
* ]
*/
diff --git a/jstests/core/timeseries/bucket_unpacking_with_sort.js b/jstests/core/timeseries/bucket_unpacking_with_sort.js
index 029697be74a..97256a2d457 100644
--- a/jstests/core/timeseries/bucket_unpacking_with_sort.js
+++ b/jstests/core/timeseries/bucket_unpacking_with_sort.js
@@ -3,20 +3,15 @@
* results to be created.
*
* @tags: [
- * requires_fcv_60,
- * # We need a timeseries collection.
- * assumes_no_implicit_collection_creation_after_drop,
- * # Cannot insert into a time-series collection in a multi-document transaction.
- * does_not_support_transactions,
+ * # Explain of a resolved view must be executed by mongos.
+ * directly_against_shardsvrs_incompatible,
+ * # This complicates aggregation extraction.
+ * do_not_wrap_aggregations_in_facets,
* # 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,
- * # This complicates aggregation extraction.
- * do_not_wrap_aggregations_in_facets,
* # We need a timeseries collection.
* requires_timeseries,
- * # Explain of a resolved view must be executed by mongos.
- * directly_against_shardsvrs_incompatible,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/bucket_unpacking_with_sort_plan_cache.js b/jstests/core/timeseries/bucket_unpacking_with_sort_plan_cache.js
index 25e1c99312e..49a645cb412 100644
--- a/jstests/core/timeseries/bucket_unpacking_with_sort_plan_cache.js
+++ b/jstests/core/timeseries/bucket_unpacking_with_sort_plan_cache.js
@@ -5,22 +5,17 @@
* @tags: [
* # Plan cache stats doesn't support different read concerns.
* assumes_read_concern_unchanged,
- * requires_fcv_60,
- * # We need a timeseries collection.
- * assumes_no_implicit_collection_creation_after_drop,
- * # Cannot insert into a time-series collection in a multi-document transaction.
- * does_not_support_transactions,
+ * # Explain of a resolved view must be executed by mongos.
+ * directly_against_shardsvrs_incompatible,
+ * # This complicates aggregation extraction.
+ * do_not_wrap_aggregations_in_facets,
* # 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,
- * # This complicates aggregation extraction.
- * do_not_wrap_aggregations_in_facets,
- * # We need a timeseries collection.
- * requires_timeseries,
- * # Explain of a resolved view must be executed by mongos.
- * directly_against_shardsvrs_incompatible,
* # We use the profiler to get info in order to force replanning.
* requires_profiling,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/clustered_index_crud.js b/jstests/core/timeseries/clustered_index_crud.js
index 3aa276f59ed..ae5a3c52861 100644
--- a/jstests/core/timeseries/clustered_index_crud.js
+++ b/jstests/core/timeseries/clustered_index_crud.js
@@ -3,7 +3,6 @@
*
* @tags: [
* does_not_support_stepdowns,
- * requires_fcv_51,
* ]
*/
diff --git a/jstests/core/timeseries/nondefault_collation.js b/jstests/core/timeseries/nondefault_collation.js
index 6f88ca2243f..307d40cbfc3 100644
--- a/jstests/core/timeseries/nondefault_collation.js
+++ b/jstests/core/timeseries/nondefault_collation.js
@@ -6,10 +6,11 @@
* requires_non_retryable_writes,
* requires_pipeline_optimization,
* does_not_support_stepdowns,
- * does_not_support_transactions,
* multiversion_incompatible,
* # Explain of a resolved view must be executed by mongos.
* directly_against_shardsvrs_incompatible,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/partialFilterExpression_with_internalBucketGeoWithin.js b/jstests/core/timeseries/partialFilterExpression_with_internalBucketGeoWithin.js
index 61521e7f86e..72fc28abd14 100644
--- a/jstests/core/timeseries/partialFilterExpression_with_internalBucketGeoWithin.js
+++ b/jstests/core/timeseries/partialFilterExpression_with_internalBucketGeoWithin.js
@@ -2,10 +2,12 @@
* This tests that partialFilterExpressions can include the $internalBucketGeoWithin operator when
* indexing buckets of timeseries operators.
* @tags: [
- * requires_non_retryable_writes,
- * requires_fcv_51,
- * assumes_no_implicit_collection_creation_after_drop,
- * does_not_support_transactions
+ * # 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,
+ * requires_non_retryable_writes,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_bucket_index.js b/jstests/core/timeseries/timeseries_bucket_index.js
index d1bef847bfc..1a816b7c84d 100644
--- a/jstests/core/timeseries/timeseries_bucket_index.js
+++ b/jstests/core/timeseries/timeseries_bucket_index.js
@@ -2,8 +2,11 @@
* Tests basic index creation and operations on a time-series bucket collection.
*
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_bucket_limit_count.js b/jstests/core/timeseries/timeseries_bucket_limit_count.js
index 8234e247e06..a506fe72fdf 100644
--- a/jstests/core/timeseries/timeseries_bucket_limit_count.js
+++ b/jstests/core/timeseries/timeseries_bucket_limit_count.js
@@ -4,10 +4,9 @@
* # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
* # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * # Same goes for tenant migrations.
- * tenant_migration_incompatible,
- * does_not_support_transactions,
* requires_collstats,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_bucket_limit_time_range.js b/jstests/core/timeseries/timeseries_bucket_limit_time_range.js
index 7e2e469c1b9..9fe5d19bf2f 100644
--- a/jstests/core/timeseries/timeseries_bucket_limit_time_range.js
+++ b/jstests/core/timeseries/timeseries_bucket_limit_time_range.js
@@ -1,8 +1,11 @@
/**
* Tests maximum time-range of measurements held in each bucket in a time-series buckets collection.
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_bucket_manual_removal.js b/jstests/core/timeseries/timeseries_bucket_manual_removal.js
index 1e7915aaa63..f704344c1bd 100644
--- a/jstests/core/timeseries/timeseries_bucket_manual_removal.js
+++ b/jstests/core/timeseries/timeseries_bucket_manual_removal.js
@@ -3,8 +3,11 @@
* collection.
*
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_bucket_rename.js b/jstests/core/timeseries/timeseries_bucket_rename.js
index 6f98179cf22..d219d104802 100644
--- a/jstests/core/timeseries/timeseries_bucket_rename.js
+++ b/jstests/core/timeseries/timeseries_bucket_rename.js
@@ -2,8 +2,8 @@
* Tests that a system.buckets collection cannot be renamed.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_bucket_spanning_epoch.js b/jstests/core/timeseries/timeseries_bucket_spanning_epoch.js
index 87aed242dac..db4853ea83a 100644
--- a/jstests/core/timeseries/timeseries_bucket_spanning_epoch.js
+++ b/jstests/core/timeseries/timeseries_bucket_spanning_epoch.js
@@ -3,15 +3,13 @@
* interesting boundaries.
*
* @tags: [
- * requires_timeseries,
- * does_not_support_transactions,
* # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
* # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * # Same goes for tenant migrations.
- * tenant_migration_incompatible,
* # Bucketing behavior with timestamp offsets greater than 32 bits was fixed in 6.1
* requires_fcv_61,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_collation.js b/jstests/core/timeseries/timeseries_collation.js
index 9c6b2e4f310..ee39304c96f 100644
--- a/jstests/core/timeseries/timeseries_collation.js
+++ b/jstests/core/timeseries/timeseries_collation.js
@@ -5,9 +5,8 @@
* # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
* # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * # Same goes for tenant migrations.
- * tenant_migration_incompatible,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_collmod.js b/jstests/core/timeseries/timeseries_collmod.js
index 729e18f8505..7c919878bad 100644
--- a/jstests/core/timeseries/timeseries_collmod.js
+++ b/jstests/core/timeseries/timeseries_collmod.js
@@ -2,11 +2,12 @@
* This tests which collMod options are allowed on a time-series collection.
*
* @tags: [
- * # Cannot implicitly shard accessed collections because of collection existing when none
- * # expected.
- * assumes_no_implicit_collection_creation_after_drop,
- * requires_non_retryable_commands,
- * requires_fcv_61,
+ * # Behavior clarified in binVersion 6.1
+ * requires_fcv_61,
+ * # collMod is not retryable
+ * requires_non_retryable_commands,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_create_collection.js b/jstests/core/timeseries/timeseries_create_collection.js
index f23b7b49d19..04d37eff5c0 100644
--- a/jstests/core/timeseries/timeseries_create_collection.js
+++ b/jstests/core/timeseries/timeseries_create_collection.js
@@ -4,8 +4,10 @@
* in that case.
*
* @tags: [
+ * # "Overriding safe failed response for :: create"
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_create_invalid_view.js b/jstests/core/timeseries/timeseries_create_invalid_view.js
index caa332fb343..54254e8c3ca 100644
--- a/jstests/core/timeseries/timeseries_create_invalid_view.js
+++ b/jstests/core/timeseries/timeseries_create_invalid_view.js
@@ -2,8 +2,10 @@
* Verify we cannot create a view on a system.buckets collection.
*
* @tags: [
- * does_not_support_transactions,
+ * # This restriction was added in 6.1.
* requires_fcv_61,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_delete.js b/jstests/core/timeseries/timeseries_delete.js
index 64c224cb976..ba7e7d46950 100644
--- a/jstests/core/timeseries/timeseries_delete.js
+++ b/jstests/core/timeseries/timeseries_delete.js
@@ -1,8 +1,11 @@
/**
* Tests running the delete command on a time-series collection.
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_delete_concurrent.js b/jstests/core/timeseries/timeseries_delete_concurrent.js
index 582a7f0c903..08312a40299 100644
--- a/jstests/core/timeseries/timeseries_delete_concurrent.js
+++ b/jstests/core/timeseries/timeseries_delete_concurrent.js
@@ -2,15 +2,18 @@
* Tests running the delete command on a time-series collection with concurrent modifications to the
* collection.
* @tags: [
- * assumes_no_implicit_collection_creation_after_drop,
- * does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # Fail points in this test do not exist on mongos.
+ * assumes_against_mongod_not_mongos,
* # $currentOp can't run with a readConcern other than 'local'.
* assumes_read_concern_unchanged,
* # This test only synchronizes deletes on the primary.
* assumes_read_preference_unchanged,
- * # Fail points in this test do not exist on mongos.
- * assumes_against_mongod_not_mongos,
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
+ * does_not_support_stepdowns,
+ * # We need a timeseries collection.
+ * requires_timeseries,
+ * # Uses parallel shell to wait on fail point
* uses_parallel_shell,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_delete_hint.js b/jstests/core/timeseries/timeseries_delete_hint.js
index 8a474c59b40..1f02a1ea0d7 100644
--- a/jstests/core/timeseries/timeseries_delete_hint.js
+++ b/jstests/core/timeseries/timeseries_delete_hint.js
@@ -1,18 +1,20 @@
/**
* Tests running the delete command with a hint on a time-series collection.
* @tags: [
- * assumes_no_implicit_collection_creation_after_drop,
- * does_not_support_stepdowns,
- * does_not_support_transactions,
+
* # $currentOp can't run with a readConcern other than 'local'.
* assumes_read_concern_unchanged,
* # This test only synchronizes deletes on the primary.
* assumes_read_preference_unchanged,
* # Fail points in this test do not exist on mongos.
* assumes_against_mongod_not_mongos,
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
+ * does_not_support_stepdowns,
+ * # We need a timeseries collection.
+ * requires_timeseries,
+ * # Uses parallel shell to wait on fail point
* uses_parallel_shell,
- * # This test is multiversion incompatible with binaries < 6.0.
- * requires_fcv_60
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_expire_collmod.js b/jstests/core/timeseries/timeseries_expire_collmod.js
index 992a754289a..884903583df 100644
--- a/jstests/core/timeseries/timeseries_expire_collmod.js
+++ b/jstests/core/timeseries/timeseries_expire_collmod.js
@@ -2,8 +2,8 @@
* Tests that collMod can change the expireAfterSeconds option on a time-series collection.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_explicit_unpack_bucket.js b/jstests/core/timeseries/timeseries_explicit_unpack_bucket.js
index 139367e0007..2e40486594b 100644
--- a/jstests/core/timeseries/timeseries_explicit_unpack_bucket.js
+++ b/jstests/core/timeseries/timeseries_explicit_unpack_bucket.js
@@ -4,7 +4,7 @@
* MongoDB products rather than user applications.
*
* @tags: [
- * does_not_support_transactions,
+ * # We need a timeseries collection.
* requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_find.js b/jstests/core/timeseries/timeseries_find.js
index a6e8efa9aa3..5b37ff20c9d 100644
--- a/jstests/core/timeseries/timeseries_find.js
+++ b/jstests/core/timeseries/timeseries_find.js
@@ -2,14 +2,15 @@
* Test that variable-type fields are found correctly in timeseries collections.
*
* @tags: [
- * does_not_support_transactions,
- * does_not_support_stepdowns,
- * requires_pipeline_optimization,
- * requires_timeseries,
- * # Required because of deficiencies in the burnin multiversion system.
- * requires_fcv_51,
- * # Explain of a resolved view must be executed by mongos.
- * directly_against_shardsvrs_incompatible,
+ * # Explain of a resolved view must be executed by mongos.
+ * directly_against_shardsvrs_incompatible,
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
+ * does_not_support_stepdowns,
+ * # Requires pipeline optimization to run in order to produce expected explain output
+ * requires_pipeline_optimization,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_geonear.js b/jstests/core/timeseries/timeseries_geonear.js
index d396112e467..e3203663c40 100644
--- a/jstests/core/timeseries/timeseries_geonear.js
+++ b/jstests/core/timeseries/timeseries_geonear.js
@@ -5,11 +5,10 @@
* such queries fail cleanly.
*
* @tags: [
- * does_not_support_transactions,
- * does_not_support_stepdowns,
- * requires_fcv_51,
- * requires_pipeline_optimization,
- * requires_timeseries,
+ * # Time series geo functionality requires pipeline optimization
+ * requires_pipeline_optimization,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_geonear_edge_case_measurements.js b/jstests/core/timeseries/timeseries_geonear_edge_case_measurements.js
index 1a17ca73541..b68ce613499 100644
--- a/jstests/core/timeseries/timeseries_geonear_edge_case_measurements.js
+++ b/jstests/core/timeseries/timeseries_geonear_edge_case_measurements.js
@@ -2,11 +2,10 @@
* Test the behavior of $geoNear minDistance/maxDistance on time-series measurements.
*
* @tags: [
- * does_not_support_transactions,
- * does_not_support_stepdowns,
- * requires_fcv_51,
- * requires_pipeline_optimization,
- * requires_timeseries,
+ * # Time series geo functionality requires pipeline optimization
+ * requires_pipeline_optimization,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_geonear_measurements.js b/jstests/core/timeseries/timeseries_geonear_measurements.js
index abbf7db9596..c973aeee94f 100644
--- a/jstests/core/timeseries/timeseries_geonear_measurements.js
+++ b/jstests/core/timeseries/timeseries_geonear_measurements.js
@@ -10,13 +10,15 @@
* collection (both with, and without, a 2dsphere index).
*
* @tags: [
- * does_not_support_transactions,
- * does_not_support_stepdowns,
- * requires_fcv_51,
- * requires_pipeline_optimization,
- * requires_timeseries,
- * # Explain of a resolved view must be executed by mongos.
- * directly_against_shardsvrs_incompatible,
+ * # Explain of a resolved view must be executed by mongos.
+ * directly_against_shardsvrs_incompatible,
+ * # 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,
+ * # Time series geo functionality requires pipeline optimization
+ * requires_pipeline_optimization,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_geonear_random_measurements.js b/jstests/core/timeseries/timeseries_geonear_random_measurements.js
index 27d0bf297ba..3f1d59f4c6c 100644
--- a/jstests/core/timeseries/timeseries_geonear_random_measurements.js
+++ b/jstests/core/timeseries/timeseries_geonear_random_measurements.js
@@ -2,11 +2,10 @@
* Test the behavior of $geoNear queries on randomly chosen time-series measurements.
*
* @tags: [
- * does_not_support_transactions,
- * does_not_support_stepdowns,
- * requires_fcv_51,
- * requires_pipeline_optimization,
- * requires_timeseries,
+ * # Time series geo functionality requires pipeline optimization
+ * requires_pipeline_optimization,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_graph_lookup.js b/jstests/core/timeseries/timeseries_graph_lookup.js
index 7b152cc6b1f..6b71e56ea9b 100644
--- a/jstests/core/timeseries/timeseries_graph_lookup.js
+++ b/jstests/core/timeseries/timeseries_graph_lookup.js
@@ -2,9 +2,8 @@
* Verifies that time-series collections work as expected with $graphLookup.
*
* @tags: [
- * does_not_support_transactions,
+ * # We need a timeseries collection.
* requires_timeseries,
- * requires_fcv_51,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_hint.js b/jstests/core/timeseries/timeseries_hint.js
index 1087af48a66..684005541c4 100644
--- a/jstests/core/timeseries/timeseries_hint.js
+++ b/jstests/core/timeseries/timeseries_hint.js
@@ -2,11 +2,15 @@
* Test $natural hint on a time-series collection, for find and aggregate.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_pipeline_optimization,
* # Explain of a resolved view must be executed by mongos.
* directly_against_shardsvrs_incompatible,
+ * # 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,
+ * # Pipeline optimization required to get expected explain output
+ * requires_pipeline_optimization,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_id_index.js b/jstests/core/timeseries/timeseries_id_index.js
index 3cf2fcfa8fc..f3b3a2e056c 100644
--- a/jstests/core/timeseries/timeseries_id_index.js
+++ b/jstests/core/timeseries/timeseries_id_index.js
@@ -2,8 +2,8 @@
* Verifies that the _id index can be created on a timeseries collection.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_id_range.js b/jstests/core/timeseries/timeseries_id_range.js
index 38b07e921c7..6b0048d52df 100644
--- a/jstests/core/timeseries/timeseries_id_range.js
+++ b/jstests/core/timeseries/timeseries_id_range.js
@@ -6,11 +6,13 @@
* # The test assumes no index exists on the time field. shardCollection implicitly creates an
* # index.
* assumes_unsharded_collection,
- * does_not_support_stepdowns,
- * does_not_support_transactions,
* # Explain of a resolved view must be executed by mongos.
* directly_against_shardsvrs_incompatible,
- * tenant_migration_incompatible,
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
+ * does_not_support_stepdowns,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_index.js b/jstests/core/timeseries/timeseries_index.js
index 711d072164c..0c280d2503e 100644
--- a/jstests/core/timeseries/timeseries_index.js
+++ b/jstests/core/timeseries/timeseries_index.js
@@ -2,8 +2,11 @@
* Tests index creation, index drops, list indexes, hide/unhide index on a time-series collection.
*
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_index_collation.js b/jstests/core/timeseries/timeseries_index_collation.js
index 47af30bee6d..ae2a126889a 100644
--- a/jstests/core/timeseries/timeseries_index_collation.js
+++ b/jstests/core/timeseries/timeseries_index_collation.js
@@ -2,8 +2,11 @@
* Tests collation with time-series collections.
*
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_index_partial.js b/jstests/core/timeseries/timeseries_index_partial.js
index bf61bbe8ce8..55ece446457 100644
--- a/jstests/core/timeseries/timeseries_index_partial.js
+++ b/jstests/core/timeseries/timeseries_index_partial.js
@@ -2,11 +2,13 @@
* Test creating and using partial indexes, on a time-series collection.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_fcv_52,
* # Explain of a resolved view must be executed by mongos.
* directly_against_shardsvrs_incompatible,
+ * # 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,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_index_skipped_record_tracker.js b/jstests/core/timeseries/timeseries_index_skipped_record_tracker.js
index ab4f1f88e8e..87f6ecb9fa5 100644
--- a/jstests/core/timeseries/timeseries_index_skipped_record_tracker.js
+++ b/jstests/core/timeseries/timeseries_index_skipped_record_tracker.js
@@ -3,8 +3,8 @@
* for time-series collections.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_index_spec.js b/jstests/core/timeseries/timeseries_index_spec.js
index 9ce5d524f8a..833915266af 100644
--- a/jstests/core/timeseries/timeseries_index_spec.js
+++ b/jstests/core/timeseries/timeseries_index_spec.js
@@ -5,9 +5,8 @@
* reverse mapping mechanism.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_find_command,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_index_stats.js b/jstests/core/timeseries/timeseries_index_stats.js
index c4a10c5df34..7cd7b27e766 100644
--- a/jstests/core/timeseries/timeseries_index_stats.js
+++ b/jstests/core/timeseries/timeseries_index_stats.js
@@ -6,9 +6,11 @@
* # $indexStats stage. The former operation must be routed to the primary in a replica set,
* # whereas the latter may be routed to a secondary.
* assumes_read_preference_unchanged,
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_non_retryable_writes,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_index_ttl_partial.js b/jstests/core/timeseries/timeseries_index_ttl_partial.js
index b8364919b33..e0f64b6b842 100644
--- a/jstests/core/timeseries/timeseries_index_ttl_partial.js
+++ b/jstests/core/timeseries/timeseries_index_ttl_partial.js
@@ -2,9 +2,11 @@
* Tests the creation of partial, TTL indexes on a time-series collection.
*
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
- * featureFlagTimeseriesScalabilityImprovements,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
@@ -12,6 +14,12 @@
load("jstests/core/timeseries/libs/timeseries.js");
+if (!TimeseriesTest.timeseriesScalabilityImprovementsEnabled(db.getMongo())) {
+ jsTestLog(
+ "Skipped test as the featureFlagTimeseriesScalabilityImprovements feature flag is not enabled.");
+ return;
+}
+
const collName = "timeseries_index_ttl_partial";
const indexName = "partialTTLIndex";
const coll = db.getCollection(collName);
diff --git a/jstests/core/timeseries/timeseries_index_use.js b/jstests/core/timeseries/timeseries_index_use.js
index 77259ef0c69..b1106e4ead0 100644
--- a/jstests/core/timeseries/timeseries_index_use.js
+++ b/jstests/core/timeseries/timeseries_index_use.js
@@ -2,11 +2,15 @@
* Tests index usage on meta and time fields for timeseries collections.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_pipeline_optimization,
* # Explain of a resolved view must be executed by mongos.
* directly_against_shardsvrs_incompatible,
+ * # 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,
+ * # Tests that optimization produces expected query plans.
+ * requires_pipeline_optimization,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_insert.js b/jstests/core/timeseries/timeseries_insert.js
index 65e8f2e5ef0..bbb876a3ade 100644
--- a/jstests/core/timeseries/timeseries_insert.js
+++ b/jstests/core/timeseries/timeseries_insert.js
@@ -1,7 +1,8 @@
/**
* Inserts time-series data based on the TSBS document-per-event format.
- * * @tags: [
- * does_not_support_transactions,
+ * @tags: [
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_insert_after_delete.js b/jstests/core/timeseries/timeseries_insert_after_delete.js
index a125d2a3f89..f43a7b245da 100644
--- a/jstests/core/timeseries/timeseries_insert_after_delete.js
+++ b/jstests/core/timeseries/timeseries_insert_after_delete.js
@@ -1,8 +1,11 @@
/**
* Tests running the delete command on a time-series collection closes the in-memory bucket.
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_insert_after_update.js b/jstests/core/timeseries/timeseries_insert_after_update.js
index 6ff70d6e8b5..d645701dd11 100644
--- a/jstests/core/timeseries/timeseries_insert_after_update.js
+++ b/jstests/core/timeseries/timeseries_insert_after_update.js
@@ -3,9 +3,13 @@
* were updated.
*
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # Test explicitly relies on multi-updates.
* requires_multi_updates,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_internal_bounded_sort.js b/jstests/core/timeseries/timeseries_internal_bounded_sort.js
index 45cb1af79da..873c16b7421 100644
--- a/jstests/core/timeseries/timeseries_internal_bounded_sort.js
+++ b/jstests/core/timeseries/timeseries_internal_bounded_sort.js
@@ -1,14 +1,13 @@
/**
* Tests the behavior of the $_internalBoundedSort stage.
* @tags: [
- * requires_fcv_60,
- * # Cannot insert into a time-series collection in a multi-document transaction.
- * does_not_support_transactions,
+ * # Explain of a resolved view must be executed by mongos.
+ * directly_against_shardsvrs_incompatible,
* # 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,
- * # Explain of a resolved view must be executed by mongos.
- * directly_against_shardsvrs_incompatible,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_internal_bounded_sort_compound.js b/jstests/core/timeseries/timeseries_internal_bounded_sort_compound.js
index 6f3a57f39e2..92d77cf8fd6 100644
--- a/jstests/core/timeseries/timeseries_internal_bounded_sort_compound.js
+++ b/jstests/core/timeseries/timeseries_internal_bounded_sort_compound.js
@@ -2,14 +2,13 @@
* Tests the behavior of the $_internalBoundedSort stage with a compound sort key.
*
* @tags: [
- * requires_fcv_60,
- * # Cannot insert into a time-series collection in a multi-document transaction.
- * does_not_support_transactions,
+ * # Explain of a resolved view must be executed by mongos.
+ * directly_against_shardsvrs_incompatible,
* # 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,
- * # Explain of a resolved view must be executed by mongos.
- * directly_against_shardsvrs_incompatible,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_internal_bounded_sort_compound_mixed_types.js b/jstests/core/timeseries/timeseries_internal_bounded_sort_compound_mixed_types.js
index 417818559d6..f8e435c8563 100644
--- a/jstests/core/timeseries/timeseries_internal_bounded_sort_compound_mixed_types.js
+++ b/jstests/core/timeseries/timeseries_internal_bounded_sort_compound_mixed_types.js
@@ -2,14 +2,13 @@
* Tests that $_internalBoundedSort uses the same equality comparator as $sort.
*
* @tags: [
- * requires_fcv_60,
- * # Cannot insert into a time-series collection in a multi-document transaction.
- * does_not_support_transactions,
+ * # Explain of a resolved view must be executed by mongos.
+ * directly_against_shardsvrs_incompatible,
* # 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,
- * # Explain of a resolved view must be executed by mongos.
- * directly_against_shardsvrs_incompatible,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_internal_bounded_sort_overflow.js b/jstests/core/timeseries/timeseries_internal_bounded_sort_overflow.js
index 08191105d36..6a588b5ada2 100644
--- a/jstests/core/timeseries/timeseries_internal_bounded_sort_overflow.js
+++ b/jstests/core/timeseries/timeseries_internal_bounded_sort_overflow.js
@@ -2,14 +2,13 @@
* Reproducer for an integer overflow bug in $_internalBoundedSort.
*
* @tags: [
- * requires_fcv_60,
- * # Cannot insert into a time-series collection in a multi-document transaction.
- * does_not_support_transactions,
+ * # Explain of a resolved view must be executed by mongos.
+ * directly_against_shardsvrs_incompatible,
* # 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,
- * # Explain of a resolved view must be executed by mongos.
- * directly_against_shardsvrs_incompatible,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_internal_bucket_geo_within.js b/jstests/core/timeseries/timeseries_internal_bucket_geo_within.js
index cd75ee6c9b8..5f2f4104d4b 100644
--- a/jstests/core/timeseries/timeseries_internal_bucket_geo_within.js
+++ b/jstests/core/timeseries/timeseries_internal_bucket_geo_within.js
@@ -4,13 +4,17 @@
* collection.
*
* @tags: [
- * requires_fcv_62,
- * requires_pipeline_optimization,
- * requires_timeseries,
- * does_not_support_stepdowns,
- * does_not_support_transactions,
* # Explain of a resolved view must be executed by mongos.
* directly_against_shardsvrs_incompatible,
+ * # Time series geo functionality requires optimization.
+ * requires_pipeline_optimization,
+ * # 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,
+ * # Error-handling behavior updated in 6.2, will cause issues for multiversion testing
+ * requires_fcv_62,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_large_measurements.js b/jstests/core/timeseries/timeseries_large_measurements.js
index 409af5a80d3..a0fe365e14a 100644
--- a/jstests/core/timeseries/timeseries_large_measurements.js
+++ b/jstests/core/timeseries/timeseries_large_measurements.js
@@ -3,11 +3,15 @@
* control.min and control.max fields.
*
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
- * tenant_migration_incompatible,
+ * # Test examines collection stats.
* requires_collstats,
+ * # Large measurement handling changed in binVersion 6.1.
* requires_fcv_61,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_lastpoint.js b/jstests/core/timeseries/timeseries_lastpoint.js
index c7a1b2170a1..c6469736c09 100644
--- a/jstests/core/timeseries/timeseries_lastpoint.js
+++ b/jstests/core/timeseries/timeseries_lastpoint.js
@@ -2,16 +2,15 @@
* Tests the optimization of "lastpoint"-type queries on time-series collections.
*
* @tags: [
- * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
- * # writes splitting between two primaries, and thus different buckets.
- * does_not_support_stepdowns,
- * # Same goes for tenant migrations.
- * tenant_migration_incompatible,
- * does_not_support_transactions,
- * requires_timeseries,
- * requires_pipeline_optimization,
* # Explain of a resolved view must be executed by mongos.
* directly_against_shardsvrs_incompatible,
+ * # Testing last point optimization.
+ * requires_pipeline_optimization,
+ * # 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,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_lastpoint_top.js b/jstests/core/timeseries/timeseries_lastpoint_top.js
index 47671d97399..714813cd75e 100644
--- a/jstests/core/timeseries/timeseries_lastpoint_top.js
+++ b/jstests/core/timeseries/timeseries_lastpoint_top.js
@@ -2,16 +2,15 @@
* Tests the optimization of "lastpoint"-type queries on time-series collections.
*
* @tags: [
- * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
- * # writes splitting between two primaries, and thus different buckets.
- * does_not_support_stepdowns,
- * # Same goes for tenant migrations.
- * tenant_migration_incompatible,
- * does_not_support_transactions,
- * requires_timeseries,
- * requires_pipeline_optimization,
* # Explain of a resolved view must be executed by mongos.
* directly_against_shardsvrs_incompatible,
+ * # Testing last point optimization.
+ * requires_pipeline_optimization,
+ * # 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,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_list_collections.js b/jstests/core/timeseries/timeseries_list_collections.js
index f2f6b9a9d12..ee2d5dd143e 100644
--- a/jstests/core/timeseries/timeseries_list_collections.js
+++ b/jstests/core/timeseries/timeseries_list_collections.js
@@ -2,7 +2,8 @@
* Tests the result of running listCollections when there are time-series collections present.
*
* @tags: [
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_list_collections_filter_name.js b/jstests/core/timeseries/timeseries_list_collections_filter_name.js
index af53436ab66..fb80b08400d 100644
--- a/jstests/core/timeseries/timeseries_list_collections_filter_name.js
+++ b/jstests/core/timeseries/timeseries_list_collections_filter_name.js
@@ -3,7 +3,8 @@
* name.
*
* @tags: [
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_lookup.js b/jstests/core/timeseries/timeseries_lookup.js
index e6bf1792b78..62b4ffeeeb0 100644
--- a/jstests/core/timeseries/timeseries_lookup.js
+++ b/jstests/core/timeseries/timeseries_lookup.js
@@ -2,9 +2,11 @@
* Test that time-series bucket collections work as expected with $lookup.
*
* @tags: [
- * does_not_support_transactions,
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
+ * does_not_support_stepdowns,
+ * # We need a timeseries collection.
* requires_timeseries,
- * requires_fcv_60,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_merge.js b/jstests/core/timeseries/timeseries_merge.js
index 59d4dbee889..041a88a2476 100644
--- a/jstests/core/timeseries/timeseries_merge.js
+++ b/jstests/core/timeseries/timeseries_merge.js
@@ -3,8 +3,9 @@
*
*
* @tags: [
+ * # TimeseriesAggTests doesn't handle stepdowns.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
* requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_metadata.js b/jstests/core/timeseries/timeseries_metadata.js
index b946bb7f4c2..53a5dac863e 100644
--- a/jstests/core/timeseries/timeseries_metadata.js
+++ b/jstests/core/timeseries/timeseries_metadata.js
@@ -2,8 +2,11 @@
* Tests that only measurements with a binary identical meta field are included in the same bucket
* in a time-series collection.
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_metric_index_2dsphere.js b/jstests/core/timeseries/timeseries_metric_index_2dsphere.js
index af9a696d8ce..2fa470bbf59 100644
--- a/jstests/core/timeseries/timeseries_metric_index_2dsphere.js
+++ b/jstests/core/timeseries/timeseries_metric_index_2dsphere.js
@@ -4,10 +4,15 @@
* Tests index creation, document insertion, index utilization for queries, and index drop.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
* # Explain of a resolved view must be executed by mongos.
* directly_against_shardsvrs_incompatible,
+ * # Time series geo functionality requires optimization.
+ * requires_pipeline_optimization,
+ * # 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,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_metric_index_ascending_descending.js b/jstests/core/timeseries/timeseries_metric_index_ascending_descending.js
index 488d2fb8f37..6a97171a821 100644
--- a/jstests/core/timeseries/timeseries_metric_index_ascending_descending.js
+++ b/jstests/core/timeseries/timeseries_metric_index_ascending_descending.js
@@ -2,11 +2,10 @@
* Tests creating and using ascending and descending indexes on time-series measurement fields.
*
* @tags: [
- * # This test makes assertions on listIndexes and on the order of the indexes returned.
- * assumes_no_implicit_index_creation,
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_find_command,
+ * # This test makes assertions on listIndexes and on the order of the indexes returned.
+ * assumes_no_implicit_index_creation,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_metric_index_compound.js b/jstests/core/timeseries/timeseries_metric_index_compound.js
index 573e4e6af25..41e245bccab 100644
--- a/jstests/core/timeseries/timeseries_metric_index_compound.js
+++ b/jstests/core/timeseries/timeseries_metric_index_compound.js
@@ -2,11 +2,10 @@
* Tests creating and using compound indexes on time-series metadata and measurement fields.
*
* @tags: [
- * # This test makes assertions on listIndexes and on the order of the indexes returned.
- * assumes_no_implicit_index_creation,
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_find_command,
+ * # This test makes assertions on listIndexes and on the order of the indexes returned.
+ * assumes_no_implicit_index_creation,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_metric_index_hashed.js b/jstests/core/timeseries/timeseries_metric_index_hashed.js
index 6fb7c70ac14..fd9310fe652 100644
--- a/jstests/core/timeseries/timeseries_metric_index_hashed.js
+++ b/jstests/core/timeseries/timeseries_metric_index_hashed.js
@@ -2,9 +2,8 @@
* Tests that hashed indexes are prohibited on measurement fields.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_find_command,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_metric_index_wildcard.js b/jstests/core/timeseries/timeseries_metric_index_wildcard.js
index c704bdd25d3..01bd36db5c0 100644
--- a/jstests/core/timeseries/timeseries_metric_index_wildcard.js
+++ b/jstests/core/timeseries/timeseries_metric_index_wildcard.js
@@ -2,9 +2,8 @@
* Tests that wildcard indexes are prohibited on measurement fields.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_find_command,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_min_max.js b/jstests/core/timeseries/timeseries_min_max.js
index 683b9cbc772..4abf641df33 100644
--- a/jstests/core/timeseries/timeseries_min_max.js
+++ b/jstests/core/timeseries/timeseries_min_max.js
@@ -6,9 +6,8 @@
* # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
* # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * # Same goes for tenant migrations.
- * tenant_migration_incompatible,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_out.js b/jstests/core/timeseries/timeseries_out.js
index aefd82f0148..46beccd99ed 100644
--- a/jstests/core/timeseries/timeseries_out.js
+++ b/jstests/core/timeseries/timeseries_out.js
@@ -3,8 +3,9 @@
*
*
* @tags: [
- * does_not_support_transactions,
- * requires_non_retryable_commands,
+ * # TimeseriesAggTests doesn't handle stepdowns.
+ * does_not_support_stepdowns,
+ * # We need a timeseries collection.
* requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_out_of_order.js b/jstests/core/timeseries/timeseries_out_of_order.js
index e12708d61ec..0a7f0afa365 100644
--- a/jstests/core/timeseries/timeseries_out_of_order.js
+++ b/jstests/core/timeseries/timeseries_out_of_order.js
@@ -3,8 +3,11 @@
* they are within the time range, regardless of the order in which they are inserted.
*
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_predicates.js b/jstests/core/timeseries/timeseries_predicates.js
index a273cc8b128..5499c060eea 100644
--- a/jstests/core/timeseries/timeseries_predicates.js
+++ b/jstests/core/timeseries/timeseries_predicates.js
@@ -2,9 +2,11 @@
* Test the input/output behavior of some predicates on time-series collections.
*
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_fcv_52,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_predicates_with_projections.js b/jstests/core/timeseries/timeseries_predicates_with_projections.js
index 5e2a4db7434..65b4ff155cb 100644
--- a/jstests/core/timeseries/timeseries_predicates_with_projections.js
+++ b/jstests/core/timeseries/timeseries_predicates_with_projections.js
@@ -3,8 +3,9 @@
* collections.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # deleteMany({}) is not retryable
+ * requires_non_retryable_writes,
+ * # We need a timeseries collection.
* requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_project.js b/jstests/core/timeseries/timeseries_project.js
index 9375f06240d..b9ba914130a 100644
--- a/jstests/core/timeseries/timeseries_project.js
+++ b/jstests/core/timeseries/timeseries_project.js
@@ -2,9 +2,8 @@
* Test the behavior of $project on time-series collections.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_fcv_53,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_resume_after.js b/jstests/core/timeseries/timeseries_resume_after.js
index 34ccfa06d65..8530856f1fd 100644
--- a/jstests/core/timeseries/timeseries_resume_after.js
+++ b/jstests/core/timeseries/timeseries_resume_after.js
@@ -5,9 +5,10 @@
* @tags: [
* # Queries on mongoS may not request or provide a resume token.
* assumes_against_mongod_not_mongos,
+ * # Resuming may not work properly with stepdowns.
* does_not_support_stepdowns,
- * does_not_support_transactions,
- * tenant_migration_incompatible,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_show_record_id.js b/jstests/core/timeseries/timeseries_show_record_id.js
index c2c7f1d62ba..68193343918 100644
--- a/jstests/core/timeseries/timeseries_show_record_id.js
+++ b/jstests/core/timeseries/timeseries_show_record_id.js
@@ -2,8 +2,8 @@
* Verifies that showRecordId() returns the ObjectId type for time-series collections.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_simple.js b/jstests/core/timeseries/timeseries_simple.js
index fc20739c62f..c86b2c25750 100644
--- a/jstests/core/timeseries/timeseries_simple.js
+++ b/jstests/core/timeseries/timeseries_simple.js
@@ -5,9 +5,8 @@
* # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
* # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * # Same goes for tenant migrations.
- * tenant_migration_incompatible,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_sparse.js b/jstests/core/timeseries/timeseries_sparse.js
index 3ea3cdeb1f6..1362fc6eac4 100644
--- a/jstests/core/timeseries/timeseries_sparse.js
+++ b/jstests/core/timeseries/timeseries_sparse.js
@@ -2,8 +2,11 @@
* Typically, time-series collections use measurements that always contain data for every field.
* This test provides coverage for when this is not the case.
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_sparse_index.js b/jstests/core/timeseries/timeseries_sparse_index.js
index d9fd22efe00..813d50b565d 100644
--- a/jstests/core/timeseries/timeseries_sparse_index.js
+++ b/jstests/core/timeseries/timeseries_sparse_index.js
@@ -2,11 +2,13 @@
* Tests that sparse indexes are not allowed on a time-series measurement field.
*
* @tags: [
- * # This test makes assertions on listIndexes and on the order of the indexes returned.
- * assumes_no_implicit_index_creation,
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_find_command,
+ * # This test makes assertions on listIndexes and on the order of the indexes returned.
+ * assumes_no_implicit_index_creation,
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
+ * does_not_support_stepdowns,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_special_indexes_metadata.js b/jstests/core/timeseries/timeseries_special_indexes_metadata.js
index d5c2eea1255..5b6b150e459 100644
--- a/jstests/core/timeseries/timeseries_special_indexes_metadata.js
+++ b/jstests/core/timeseries/timeseries_special_indexes_metadata.js
@@ -4,9 +4,13 @@
* Tests index creation, index drops, list indexes, hide/unhide index on a time-series collection.
*
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # Time series geo functionality requires optimization.
* requires_pipeline_optimization,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_text_geonear_disallowed.js b/jstests/core/timeseries/timeseries_text_geonear_disallowed.js
index 0b0fd3f708b..3964c28861e 100644
--- a/jstests/core/timeseries/timeseries_text_geonear_disallowed.js
+++ b/jstests/core/timeseries/timeseries_text_geonear_disallowed.js
@@ -3,9 +3,7 @@
* and such queries fail cleanly.
*
* @tags: [
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_fcv_51,
+ * # We need a timeseries collection.
* requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_union_with.js b/jstests/core/timeseries/timeseries_union_with.js
index b78bbd6937c..f32fdd82892 100644
--- a/jstests/core/timeseries/timeseries_union_with.js
+++ b/jstests/core/timeseries/timeseries_union_with.js
@@ -2,7 +2,10 @@
* Test that time-series bucket collections work as expected with $unionWith.
*
* @tags: [
- * does_not_support_transactions,
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
+ * does_not_support_stepdowns,
+ * # We need a timeseries collection.
* requires_timeseries,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_update.js b/jstests/core/timeseries/timeseries_update.js
index d8f3e2edb5b..a223d34763a 100644
--- a/jstests/core/timeseries/timeseries_update.js
+++ b/jstests/core/timeseries/timeseries_update.js
@@ -1,10 +1,13 @@
/**
* Tests running the update command on a time-series collection.
* @tags: [
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
* does_not_support_stepdowns,
- * does_not_support_transactions,
+ * # Specifically testing multi-updates.
* requires_multi_updates,
- * tenant_migration_incompatible,
+ * # We need a timeseries collection.
+ * requires_timeseries,
* ]
*/
(function() {
diff --git a/jstests/core/timeseries/timeseries_update_concurrent.js b/jstests/core/timeseries/timeseries_update_concurrent.js
index 847aed8c8e4..d48e6dc28e3 100644
--- a/jstests/core/timeseries/timeseries_update_concurrent.js
+++ b/jstests/core/timeseries/timeseries_update_concurrent.js
@@ -2,16 +2,21 @@
* Tests running the update command on a time-series collection with concurrent modifications to the
* collection.
* @tags: [
- * assumes_unsharded_collection, # TODO SERVER-60233: Remove this tag.
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_multi_updates,
+ * # Fail points in this test do not exist on mongos.
+ * assumes_against_mongod_not_mongos,
* # $currentOp can't run with a readConcern other than 'local'.
* assumes_read_concern_unchanged,
* # This test only synchronizes updates on the primary.
* assumes_read_preference_unchanged,
- * # Fail points in this test do not exist on mongos.
- * assumes_against_mongod_not_mongos,
+ * assumes_unsharded_collection, # TODO SERVER-60233: Remove this tag.
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
+ * does_not_support_stepdowns,
+ * # Specifically testing multi-updates.
+ * requires_multi_updates,
+ * # We need a timeseries collection.
+ * requires_timeseries,
+ * # Test uses parallel shell to wait on fail point.
* uses_parallel_shell,
* ]
*/
diff --git a/jstests/core/timeseries/timeseries_update_hint.js b/jstests/core/timeseries/timeseries_update_hint.js
index cc8f1f30679..885850fc009 100644
--- a/jstests/core/timeseries/timeseries_update_hint.js
+++ b/jstests/core/timeseries/timeseries_update_hint.js
@@ -1,19 +1,22 @@
/**
* Tests passing a hint to the update command on a time-series collection.
* @tags: [
- * assumes_unsharded_collection, # TODO SERVER-60233: Remove this tag.
- * does_not_support_stepdowns,
- * does_not_support_transactions,
- * requires_multi_updates,
+ * # Fail points in this test do not exist on mongos.
+ * assumes_against_mongod_not_mongos,
* # $currentOp can't run with a readConcern other than 'local'.
* assumes_read_concern_unchanged,
* # This test only synchronizes updates on the primary.
* assumes_read_preference_unchanged,
- * # Fail points in this test do not exist on mongos.
- * assumes_against_mongod_not_mongos,
+ * assumes_unsharded_collection, # TODO SERVER-60233: Remove this tag.
+ * # This test depends on certain writes ending up in the same bucket. Stepdowns may result in
+ * # writes splitting between two primaries, and thus different buckets.
+ * does_not_support_stepdowns,
+ * # Specifically testing multi-updates.
+ * requires_multi_updates,
+ * # We need a timeseries collection.
+ * requires_timeseries,
+ * # Test uses parallel shell to wait on fail point.
* uses_parallel_shell,
- * # This test is multiversion incompatible with binaries < 6.0.
- * requires_fcv_60
* ]
*/
(function() {