From 6c7891a77bbc924c59986b3e364b04ea46606109 Mon Sep 17 00:00:00 2001 From: Robert Guo Date: Mon, 26 Sep 2016 11:53:17 -0400 Subject: SERVER-25917 add initialsync fuzzer suite (cherry picked from commit 6a8e08ce4c12902c715e1ba4a5c69167bce86cee) --- .../suites/jstestfuzz_replication_initsync.yml | 34 ++++++++++++++ .../suites/jstestfuzz_replication_resync.yml | 35 ++++++++++++++ buildscripts/resmokelib/testing/hooks.py | 4 +- etc/evergreen.yml | 54 ++++++++++++++++++++++ 4 files changed, 125 insertions(+), 2 deletions(-) create mode 100644 buildscripts/resmokeconfig/suites/jstestfuzz_replication_initsync.yml create mode 100644 buildscripts/resmokeconfig/suites/jstestfuzz_replication_resync.yml diff --git a/buildscripts/resmokeconfig/suites/jstestfuzz_replication_initsync.yml b/buildscripts/resmokeconfig/suites/jstestfuzz_replication_initsync.yml new file mode 100644 index 00000000000..034f254494f --- /dev/null +++ b/buildscripts/resmokeconfig/suites/jstestfuzz_replication_initsync.yml @@ -0,0 +1,34 @@ +selector: + js_test: + roots: + - jstestfuzz/out/*.js + +executor: + js_test: + config: + shell_options: + readMode: commands + global_vars: + TestData: + ignoreCommandsIncompatibleWithInitialSync: true + hooks: + - class: BackgroundInitialSync + n: 1 + shell_options: + global_vars: + TestData: + skipValidationOnInvalidViewDefinitions: true + forceValidationWithFeatureCompatibilityVersion: "3.4" + fixture: + class: ReplicaSetFixture + mongod_options: + oplogSize: 511 + verbose: '' + set_parameters: + logComponentVerbosity: + replication: 2 + enableTestCommands: 1 + numInitialSyncAttempts: 2 + numInitialSyncConnectAttempts: 60 + num_nodes: 2 + start_initial_sync_node: True diff --git a/buildscripts/resmokeconfig/suites/jstestfuzz_replication_resync.yml b/buildscripts/resmokeconfig/suites/jstestfuzz_replication_resync.yml new file mode 100644 index 00000000000..1038b99a10c --- /dev/null +++ b/buildscripts/resmokeconfig/suites/jstestfuzz_replication_resync.yml @@ -0,0 +1,35 @@ +selector: + js_test: + roots: + - jstestfuzz/out/*.js + +executor: + js_test: + config: + shell_options: + readMode: commands + global_vars: + TestData: + ignoreCommandsIncompatibleWithInitialSync: true + hooks: + - class: BackgroundInitialSync + use_resync: true + n: 1 + shell_options: + global_vars: + TestData: + skipValidationOnInvalidViewDefinitions: true + forceValidationWithFeatureCompatibilityVersion: "3.4" + fixture: + class: ReplicaSetFixture + mongod_options: + oplogSize: 511 + verbose: '' + set_parameters: + logComponentVerbosity: + replication: 2 + enableTestCommands: 1 + numInitialSyncAttempts: 1 + numInitialSyncConnectAttempts: 60 + num_nodes: 2 + start_initial_sync_node: True diff --git a/buildscripts/resmokelib/testing/hooks.py b/buildscripts/resmokelib/testing/hooks.py index 57b912894b7..bc7c6ff2652 100644 --- a/buildscripts/resmokelib/testing/hooks.py +++ b/buildscripts/resmokelib/testing/hooks.py @@ -199,10 +199,10 @@ class BackgroundInitialSync(JsCustomBehavior): DEFAULT_N = CleanEveryN.DEFAULT_N - def __init__(self, logger, fixture, use_resync=False, n=DEFAULT_N): + def __init__(self, logger, fixture, use_resync=False, n=DEFAULT_N, shell_options=None): description = "Background Initial Sync" js_filename = os.path.join("jstests", "hooks", "run_initial_sync_node_validation.js") - JsCustomBehavior.__init__(self, logger, fixture, js_filename, description) + JsCustomBehavior.__init__(self, logger, fixture, js_filename, description, shell_options) self.use_resync = use_resync self.n = n diff --git a/etc/evergreen.yml b/etc/evergreen.yml index 17e8d3cd07b..d13d64952c4 100644 --- a/etc/evergreen.yml +++ b/etc/evergreen.yml @@ -1462,6 +1462,58 @@ tasks: <<: *jstestfuzz_config_vars resmoke_args: --suites=jstestfuzz_replication --storageEngine=wiredTiger +## jstestfuzz initial sync replica set mmapv1 ## +- <<: *jstestfuzz_template + name: jstestfuzz_replication_initsync + commands: + - func: "do setup" + - func: "run jstestfuzz" + vars: + jstestfuzz_vars: --numGeneratedFiles 75 + - <<: *run_jstestfuzz_tests + vars: + <<: *jstestfuzz_config_vars + resmoke_args: --suites=jstestfuzz_replication_initsync --storageEngine=mmapv1 + +## jstestfuzz initial sync replica set WT ## +- <<: *jstestfuzz_template + name: jstestfuzz_replication_initsync_WT + commands: + - func: "do setup" + - func: "run jstestfuzz" + vars: + jstestfuzz_vars: --numGeneratedFiles 75 + - <<: *run_jstestfuzz_tests + vars: + <<: *jstestfuzz_config_vars + resmoke_args: --suites=jstestfuzz_replication_initsync --storageEngine=wiredTiger + +## jstestfuzz initial sync replica set mmapv1 ## +- <<: *jstestfuzz_template + name: jstestfuzz_replication_resync + commands: + - func: "do setup" + - func: "run jstestfuzz" + vars: + jstestfuzz_vars: --numGeneratedFiles 75 + - <<: *run_jstestfuzz_tests + vars: + <<: *jstestfuzz_config_vars + resmoke_args: --suites=jstestfuzz_replication_resync --storageEngine=mmapv1 + +## jstestfuzz initial sync replica set WT ## +- <<: *jstestfuzz_template + name: jstestfuzz_replication_resync_WT + commands: + - func: "do setup" + - func: "run jstestfuzz" + vars: + jstestfuzz_vars: --numGeneratedFiles 75 + - <<: *run_jstestfuzz_tests + vars: + <<: *jstestfuzz_config_vars + resmoke_args: --suites=jstestfuzz_replication_resync --storageEngine=wiredTiger + ## jstestfuzz sharded cluster mmapv1 ## - <<: *jstestfuzz_template name: jstestfuzz_sharded @@ -5612,6 +5664,8 @@ buildvariants: - name: jstestfuzz_replication_WT - name: jstestfuzz_sharded - name: jstestfuzz_sharded_WT + - name: jstestfuzz_replication_initsync + - name: jstestfuzz_replication_initsync_WT - name: mmap - name: mongosTest - name: multiversion -- cgit v1.2.1