diff --git a/buildscripts/resmokeconfig/matrix_suites/generated_suites/no_passthrough_execution_control_with_prioritization.yml b/buildscripts/resmokeconfig/matrix_suites/generated_suites/no_passthrough_execution_control_with_prioritization.yml index 8afe499bb49..c5bb8c1a3bd 100644 --- a/buildscripts/resmokeconfig/matrix_suites/generated_suites/no_passthrough_execution_control_with_prioritization.yml +++ b/buildscripts/resmokeconfig/matrix_suites/generated_suites/no_passthrough_execution_control_with_prioritization.yml @@ -35,7 +35,6 @@ matrix_suite: true selector: exclude_files: - jstests/noPassthrough/libs/**/*.js - - jstests/noPassthrough/timeseries/pbt/**/*.js exclude_with_any_tags: - incompatible_with_execution_control_with_prioritization roots: diff --git a/buildscripts/resmokeconfig/suites/OWNERS.yml b/buildscripts/resmokeconfig/suites/OWNERS.yml index e5582b9cbdc..44a989b0cce 100644 --- a/buildscripts/resmokeconfig/suites/OWNERS.yml +++ b/buildscripts/resmokeconfig/suites/OWNERS.yml @@ -225,3 +225,6 @@ filters: - "ssl*.yml": approvers: - 10gen/server-security + - "timeseries_write_pbt.yml": + approvers: + - 10gen/server-timeseries-testing diff --git a/buildscripts/resmokeconfig/suites/no_passthrough.yml b/buildscripts/resmokeconfig/suites/no_passthrough.yml index 2262da74d1c..2ac5f679ad7 100644 --- a/buildscripts/resmokeconfig/suites/no_passthrough.yml +++ b/buildscripts/resmokeconfig/suites/no_passthrough.yml @@ -18,8 +18,6 @@ selector: - jstests/concurrency/*.js exclude_files: - jstests/noPassthrough/libs/**/*.js - # Exclude the timeseries pbt tests. These are intended to be run in a separate suite. - - jstests/noPassthrough/timeseries/pbt/**/*.js exclude_with_any_tags: # noPassthrough tests start their own mongod's. diff --git a/buildscripts/resmokeconfig/suites/timeseries_write_pbt.yml b/buildscripts/resmokeconfig/suites/timeseries_write_pbt.yml new file mode 100644 index 00000000000..35c37ee13d9 --- /dev/null +++ b/buildscripts/resmokeconfig/suites/timeseries_write_pbt.yml @@ -0,0 +1,15 @@ +test_kind: js_test +selector: + roots: + - jstests/write_path/timeseries/pbt/*.js + +executor: + hooks: + - class: ValidateCollections + - class: CleanEveryN + n: 20 + fixture: + class: MongoDFixture + mongod_options: + set_parameters: + enableTestCommands: 1 diff --git a/etc/evergreen_yml_components/tasks/resmoke/server_divisions/durable_transactions_and_availability/tasks.yml b/etc/evergreen_yml_components/tasks/resmoke/server_divisions/durable_transactions_and_availability/tasks.yml index ec10417efa6..b5ff096f467 100644 --- a/etc/evergreen_yml_components/tasks/resmoke/server_divisions/durable_transactions_and_availability/tasks.yml +++ b/etc/evergreen_yml_components/tasks/resmoke/server_divisions/durable_transactions_and_availability/tasks.yml @@ -2408,6 +2408,20 @@ tasks: vars: suite: v1index_jscore_passthrough + - <<: *task_template + name: timeseries_write_pbt + tags: + [ + "assigned_to_jira_team_server_execution", + "default", + "suggested_excluding_required__for_devprod_mitigation_only", + ] + commands: + - func: "do setup" + - func: "run tests" + vars: + suite: timeseries_write_pbt + ################################################ # Disagg Storage tasks # ################################################ diff --git a/jstests/write_path/OWNERS.yml b/jstests/write_path/OWNERS.yml new file mode 100644 index 00000000000..7485828dd7e --- /dev/null +++ b/jstests/write_path/OWNERS.yml @@ -0,0 +1,5 @@ +version: 1.0.0 +filters: + - "*": + approvers: + - 10gen/server-timeseries-testing diff --git a/jstests/libs/property_test_helpers/timeseries/BUILD.bazel b/jstests/write_path/timeseries/pbt/BUILD.bazel similarity index 100% rename from jstests/libs/property_test_helpers/timeseries/BUILD.bazel rename to jstests/write_path/timeseries/pbt/BUILD.bazel diff --git a/jstests/noPassthrough/timeseries/pbt/BUILD.bazel b/jstests/write_path/timeseries/pbt/lib/BUILD.bazel similarity index 100% rename from jstests/noPassthrough/timeseries/pbt/BUILD.bazel rename to jstests/write_path/timeseries/pbt/lib/BUILD.bazel diff --git a/jstests/libs/property_test_helpers/timeseries/command_arbitraries.js b/jstests/write_path/timeseries/pbt/lib/command_arbitraries.js similarity index 98% rename from jstests/libs/property_test_helpers/timeseries/command_arbitraries.js rename to jstests/write_path/timeseries/pbt/lib/command_arbitraries.js index 4a6b64256d0..46ff6494bc0 100644 --- a/jstests/libs/property_test_helpers/timeseries/command_arbitraries.js +++ b/jstests/write_path/timeseries/pbt/lib/command_arbitraries.js @@ -7,7 +7,7 @@ import {fc} from "jstests/third_party/fast_check/fc-3.1.0.js"; import { makeMeasurementDocArb, makeMeasurementDocStreamArb, -} from "jstests/libs/property_test_helpers/timeseries/measurement_arbitraries.js"; +} from "jstests/write_path/timeseries/pbt/lib/measurement_arbitraries.js"; import { InsertCommand, BatchInsertCommand, @@ -15,7 +15,7 @@ import { DeleteByRandomIdCommand, Filter, UpdateByFilterCommand, -} from "jstests/libs/property_test_helpers/timeseries/command_grammar.js"; +} from "jstests/write_path/timeseries/pbt/lib/command_grammar.js"; /** * Arbitrary for InsertCommand (single doc insert). diff --git a/jstests/libs/property_test_helpers/timeseries/command_grammar.js b/jstests/write_path/timeseries/pbt/lib/command_grammar.js similarity index 99% rename from jstests/libs/property_test_helpers/timeseries/command_grammar.js rename to jstests/write_path/timeseries/pbt/lib/command_grammar.js index 8dac6d799e6..15793caa831 100644 --- a/jstests/libs/property_test_helpers/timeseries/command_grammar.js +++ b/jstests/write_path/timeseries/pbt/lib/command_grammar.js @@ -7,7 +7,7 @@ */ import {fc} from "jstests/third_party/fast_check/fc-3.1.0.js"; -import {makeMetricArb} from "jstests/libs/property_test_helpers/timeseries/metric_arbitraries.js"; +import {makeMetricArb} from "jstests/write_path/timeseries/pbt/lib/metric_arbitraries.js"; /** * The model is used to track the expected contents of the collections, to enable diff --git a/jstests/libs/property_test_helpers/timeseries/measurement_arbitraries.js b/jstests/write_path/timeseries/pbt/lib/measurement_arbitraries.js similarity index 99% rename from jstests/libs/property_test_helpers/timeseries/measurement_arbitraries.js rename to jstests/write_path/timeseries/pbt/lib/measurement_arbitraries.js index d82ad243201..1b0b30e774e 100644 --- a/jstests/libs/property_test_helpers/timeseries/measurement_arbitraries.js +++ b/jstests/write_path/timeseries/pbt/lib/measurement_arbitraries.js @@ -8,7 +8,7 @@ import { makeMetricArb, makeSensorDateMetricStreamArb, makeMetricStreamArb, -} from "jstests/libs/property_test_helpers/timeseries/metric_arbitraries.js"; +} from "jstests/write_path/timeseries/pbt/lib/metric_arbitraries.js"; /** * Make a single measurement document arbitrary. diff --git a/jstests/libs/property_test_helpers/timeseries/metric_arbitraries.js b/jstests/write_path/timeseries/pbt/lib/metric_arbitraries.js similarity index 100% rename from jstests/libs/property_test_helpers/timeseries/metric_arbitraries.js rename to jstests/write_path/timeseries/pbt/lib/metric_arbitraries.js diff --git a/jstests/noPassthrough/timeseries/pbt/timeseries_comparative_pbt.js b/jstests/write_path/timeseries/pbt/timeseries_comparative_pbt.js similarity index 88% rename from jstests/noPassthrough/timeseries/pbt/timeseries_comparative_pbt.js rename to jstests/write_path/timeseries/pbt/timeseries_comparative_pbt.js index 059534ac3c0..036da925656 100644 --- a/jstests/noPassthrough/timeseries/pbt/timeseries_comparative_pbt.js +++ b/jstests/write_path/timeseries/pbt/timeseries_comparative_pbt.js @@ -15,11 +15,8 @@ import {after, afterEach, before, beforeEach, describe, it} from "jstests/libs/mochalite.js"; import {fc} from "jstests/third_party/fast_check/fc-3.1.0.js"; -import {makeEmptyModel} from "jstests/libs/property_test_helpers/timeseries/command_grammar.js"; -import {makeTimeseriesCommandSequenceArb} from "jstests/libs/property_test_helpers/timeseries/command_arbitraries.js"; - -const conn = MongoRunner.runMongod(); -const db = conn.getDB("test"); +import {makeEmptyModel} from "jstests/write_path/timeseries/pbt/lib/command_grammar.js"; +import {makeTimeseriesCommandSequenceArb} from "jstests/write_path/timeseries/pbt/lib/command_arbitraries.js"; const ctrlCollName = jsTestName() + "_control"; const tsCollName = jsTestName() + "_timeseries"; @@ -48,10 +45,6 @@ describe("Basic comparative PBT for timeseries inserts", () => { tsColl.drop(); }); - after(() => { - MongoRunner.stopMongod(conn); - }); - function assertCollectionsMatch() { const tsDocs = tsColl.find().sort({_id: 1}).toArray(); const ctrlDocs = ctrlColl.find().sort({_id: 1}).toArray();