summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJack Mulrow <jack.mulrow@mongodb.com>2020-04-16 12:52:36 -0400
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2020-07-16 18:13:43 +0000
commit65ff581d7f0eb97ae0b3ecee94e7627bd3dd3ee9 (patch)
tree94e01b3910b6784bf4395c0f4b105306b121eeaf
parent732df2fdc108f2125a9282ecb296283f58d57ac3 (diff)
downloadmongo-65ff581d7f0eb97ae0b3ecee94e7627bd3dd3ee9.tar.gz
SERVER-33229 Blacklist tests that use startParallelShell from failover core suites
(cherry picked from commit 1df41757d5d1e04c51eeeee786a17b005e025b93)
-rw-r--r--buildscripts/resmokeconfig/suites/replica_sets_kill_primary_jscore_passthrough.yml11
-rw-r--r--buildscripts/resmokeconfig/suites/retryable_writes_jscore_stepdown_passthrough.yml5
-rw-r--r--jstests/core/awaitdata_getmore_cmd.js1
-rw-r--r--jstests/core/compact_keeps_indexes.js1
-rw-r--r--jstests/core/count10.js1
-rw-r--r--jstests/core/count_plan_summary.js1
-rw-r--r--jstests/core/coveredIndex3.js3
-rw-r--r--jstests/core/currentop.js1
-rw-r--r--jstests/core/cursora.js1
-rw-r--r--jstests/core/distinct3.js1
-rw-r--r--jstests/core/find_and_modify_concurrent_update.js1
-rw-r--r--jstests/core/fsync.js2
-rw-r--r--jstests/core/geo_update_btree.js1
-rw-r--r--jstests/core/killop_drop_collection.js1
-rw-r--r--jstests/core/loadserverscripts.js1
-rw-r--r--jstests/core/mr_killop.js1
-rw-r--r--jstests/core/remove9.js1
-rw-r--r--jstests/core/removeb.js1
-rw-r--r--jstests/core/removec.js1
-rw-r--r--jstests/core/shellstartparallel.js1
-rw-r--r--jstests/core/updatef.js1
-rw-r--r--jstests/libs/override_methods/auto_retry_on_network_error.js8
22 files changed, 36 insertions, 10 deletions
diff --git a/buildscripts/resmokeconfig/suites/replica_sets_kill_primary_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/replica_sets_kill_primary_jscore_passthrough.yml
index 6dab24e0b0c..b7e7e8bbd7a 100644
--- a/buildscripts/resmokeconfig/suites/replica_sets_kill_primary_jscore_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/replica_sets_kill_primary_jscore_passthrough.yml
@@ -71,11 +71,6 @@ selector:
# explain command to run.
- jstests/core/explain2.js
- # Starts a parallel shell but won't restart it after unclean shutdown.
- # TODO SERVER-33229: Remove these exclusions
- - jstests/core/compact_keeps_indexes.js
- - jstests/core/find_and_modify_concurrent_update.js
-
# Inserts enough data that recovery takes more than 8 seconds, so we never get a working primary.
- jstests/core/geo_s2ordering.js
@@ -129,6 +124,11 @@ selector:
- requires_collstats
# "Cowardly fail if unbounded dataSize is run with a mongod that had an unclean shutdown: ..."
- requires_datasize
+ # Operations in the main test shell aren't guaranteed to be causally consistent with operations
+ # performed earlier in a parallel shell if multiple nodes are electable because the latest
+ # operation and cluster times aren't shared between shells.
+ # "Cowardly refusing to run test with network retries enabled when it uses startParallelShell()"
+ - uses_parallel_shell
executor:
archive:
@@ -138,7 +138,6 @@ executor:
- ValidateCollections
config:
shell_options:
- # TODO SERVER-33229: Remove override of startParallelShell
eval: >-
testingReplication = true;
load("jstests/libs/override_methods/auto_retry_on_network_error.js");
diff --git a/buildscripts/resmokeconfig/suites/retryable_writes_jscore_stepdown_passthrough.yml b/buildscripts/resmokeconfig/suites/retryable_writes_jscore_stepdown_passthrough.yml
index 0ee1b6d8611..850e1b31fc3 100644
--- a/buildscripts/resmokeconfig/suites/retryable_writes_jscore_stepdown_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/retryable_writes_jscore_stepdown_passthrough.yml
@@ -108,6 +108,11 @@ selector:
# "Cowardly refusing to run test with overridden write concern when it uses a command that can
# only perform w=1 writes: ..."
- requires_eval_command
+ # Operations in the main test shell aren't guaranteed to be causally consistent with operations
+ # performed earlier in a parallel shell if multiple nodes are electable because the latest
+ # operation and cluster times aren't shared between shells.
+ # "Cowardly refusing to run test with network retries enabled when it uses startParallelShell()"
+ - uses_parallel_shell
executor:
archive:
diff --git a/jstests/core/awaitdata_getmore_cmd.js b/jstests/core/awaitdata_getmore_cmd.js
index 9c0c048be1e..d3e231427df 100644
--- a/jstests/core/awaitdata_getmore_cmd.js
+++ b/jstests/core/awaitdata_getmore_cmd.js
@@ -7,6 +7,7 @@
// assumes_read_preference_unchanged,
// requires_getmore,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
(function() {
diff --git a/jstests/core/compact_keeps_indexes.js b/jstests/core/compact_keeps_indexes.js
index ff04a3a9451..2cab05d971f 100644
--- a/jstests/core/compact_keeps_indexes.js
+++ b/jstests/core/compact_keeps_indexes.js
@@ -1,6 +1,7 @@
// SERVER-16676 Make sure compact doesn't leave the collection with bad indexes
// @tags: [
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
// SERVER-16967 Make sure compact doesn't crash while collections are being dropped
// in a different database.
diff --git a/jstests/core/count10.js b/jstests/core/count10.js
index 1c8682e94c4..9e472a8edb3 100644
--- a/jstests/core/count10.js
+++ b/jstests/core/count10.js
@@ -7,6 +7,7 @@
// assumes_read_preference_unchanged,
// does_not_support_stepdowns,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
t = db.count10;
diff --git a/jstests/core/count_plan_summary.js b/jstests/core/count_plan_summary.js
index 7d1075d8f91..93428f41b66 100644
--- a/jstests/core/count_plan_summary.js
+++ b/jstests/core/count_plan_summary.js
@@ -7,6 +7,7 @@
// assumes_read_preference_unchanged,
// does_not_support_stepdowns,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
var t = db.jstests_count_plan_summary;
diff --git a/jstests/core/coveredIndex3.js b/jstests/core/coveredIndex3.js
index 4bfedda888b..e2781ea19db 100644
--- a/jstests/core/coveredIndex3.js
+++ b/jstests/core/coveredIndex3.js
@@ -1,5 +1,8 @@
// Check proper covered index handling when query and processGetMore yield.
// SERVER-4975
+// @tags: [
+// uses_parallel_shell,
+// ]
if (0) { // SERVER-4975
diff --git a/jstests/core/currentop.js b/jstests/core/currentop.js
index ab1e2a26dc1..165eb26691d 100644
--- a/jstests/core/currentop.js
+++ b/jstests/core/currentop.js
@@ -2,6 +2,7 @@
* Tests that long-running operations show up in currentOp and report the locks they are holding.
* @tags: [
* assumes_superuser_permissions,
+ * uses_parallel_shell,
* ]
*/
(function() {
diff --git a/jstests/core/cursora.js b/jstests/core/cursora.js
index c30090bed32..6991a4f44b1 100644
--- a/jstests/core/cursora.js
+++ b/jstests/core/cursora.js
@@ -3,6 +3,7 @@
// requires_getmore,
// requires_non_retryable_writes,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
t = db.cursora;
diff --git a/jstests/core/distinct3.js b/jstests/core/distinct3.js
index 23557820bec..9968a63157d 100644
--- a/jstests/core/distinct3.js
+++ b/jstests/core/distinct3.js
@@ -1,6 +1,7 @@
// @tags: [
// requires_non_retryable_writes,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
// Yield and delete test case for query optimizer cursor. SERVER-4401
diff --git a/jstests/core/find_and_modify_concurrent_update.js b/jstests/core/find_and_modify_concurrent_update.js
index 1209681ef8d..3717cbab29c 100644
--- a/jstests/core/find_and_modify_concurrent_update.js
+++ b/jstests/core/find_and_modify_concurrent_update.js
@@ -4,6 +4,7 @@
// @tags: [
// assumes_unsharded_collection,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
// Ensures that find and modify will not apply an update to a document which, due to a concurrent
diff --git a/jstests/core/fsync.js b/jstests/core/fsync.js
index 330767cf03a..7f484890022 100644
--- a/jstests/core/fsync.js
+++ b/jstests/core/fsync.js
@@ -7,7 +7,7 @@
* - Confirm that the command can be run repeatedly without breaking things
* - Confirm that the pseudo commands and eval can perform fsyncLock/Unlock
*
- * @tags: [requires_eval_command, requires_fastcount]
+ * @tags: [requires_eval_command, requires_fastcount, uses_parallel_shell]
*/
(function() {
"use strict";
diff --git a/jstests/core/geo_update_btree.js b/jstests/core/geo_update_btree.js
index 476921b5c2f..89fd270688d 100644
--- a/jstests/core/geo_update_btree.js
+++ b/jstests/core/geo_update_btree.js
@@ -4,6 +4,7 @@
// assumes_write_concern_unchanged,
// requires_non_retryable_writes,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
var coll = db.getCollection("jstests_geo_update_btree");
diff --git a/jstests/core/killop_drop_collection.js b/jstests/core/killop_drop_collection.js
index 98b187002be..f638cc12c57 100644
--- a/jstests/core/killop_drop_collection.js
+++ b/jstests/core/killop_drop_collection.js
@@ -5,6 +5,7 @@
* successfully.
* @tags: [
* assumes_superuser_permissions,
+ * uses_parallel_shell,
* ]
*/
(function() {
diff --git a/jstests/core/loadserverscripts.js b/jstests/core/loadserverscripts.js
index a2373a33dc8..641a07245fe 100644
--- a/jstests/core/loadserverscripts.js
+++ b/jstests/core/loadserverscripts.js
@@ -2,6 +2,7 @@
// requires_fastcount,
// requires_non_retryable_writes,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
// Test db.loadServerScripts()
diff --git a/jstests/core/mr_killop.js b/jstests/core/mr_killop.js
index 4b92d9f5dac..dbe342150ad 100644
--- a/jstests/core/mr_killop.js
+++ b/jstests/core/mr_killop.js
@@ -5,6 +5,7 @@
// assumes_unsharded_collection,
// does_not_support_stepdowns,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
// Test killop applied to m/r operations and child ops of m/r operations.
diff --git a/jstests/core/remove9.js b/jstests/core/remove9.js
index b87c747f03e..e79feb0f409 100644
--- a/jstests/core/remove9.js
+++ b/jstests/core/remove9.js
@@ -2,6 +2,7 @@
// requires_getmore,
// requires_non_retryable_writes,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
// SERVER-2009 Count odd numbered entries while updating and deleting even numbered entries.
diff --git a/jstests/core/removeb.js b/jstests/core/removeb.js
index c1dcf1e0f54..2b90d8634d4 100644
--- a/jstests/core/removeb.js
+++ b/jstests/core/removeb.js
@@ -2,6 +2,7 @@
// requires_fastcount,
// requires_non_retryable_writes,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
// Test removal of Records that have been reused since the remove operation began. SERVER-5198
diff --git a/jstests/core/removec.js b/jstests/core/removec.js
index 0e5d3e65ad2..500437e8891 100644
--- a/jstests/core/removec.js
+++ b/jstests/core/removec.js
@@ -1,6 +1,7 @@
// @tags: [
// requires_non_retryable_writes,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
// Sanity test for removing documents with adjacent index keys. SERVER-2008
diff --git a/jstests/core/shellstartparallel.js b/jstests/core/shellstartparallel.js
index 947ddf24bf4..e86d4690401 100644
--- a/jstests/core/shellstartparallel.js
+++ b/jstests/core/shellstartparallel.js
@@ -1,6 +1,7 @@
// @tags: [
// requires_fastcount,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
function f() {
diff --git a/jstests/core/updatef.js b/jstests/core/updatef.js
index 75b61e299cd..6597484f78a 100644
--- a/jstests/core/updatef.js
+++ b/jstests/core/updatef.js
@@ -2,6 +2,7 @@
// requires_non_retryable_commands,
// requires_non_retryable_writes,
// uses_multiple_connections,
+// uses_parallel_shell,
// ]
// Test unsafe management of nsdt on update command yield SERVER-3208
diff --git a/jstests/libs/override_methods/auto_retry_on_network_error.js b/jstests/libs/override_methods/auto_retry_on_network_error.js
index 6790cbd72a3..bd0b89b4efb 100644
--- a/jstests/libs/override_methods/auto_retry_on_network_error.js
+++ b/jstests/libs/override_methods/auto_retry_on_network_error.js
@@ -367,9 +367,6 @@
} while (numRetries >= 0);
}
- OverrideHelpers.prependOverrideInParallelShell(
- "jstests/libs/override_methods/auto_retry_on_network_error.js");
-
const connectOriginal = connect;
connect = function(url, user, pass) {
@@ -394,6 +391,11 @@
return retVal;
};
+ startParallelShell = function() {
+ throw new Error("Cowardly refusing to run test with network retries enabled when it uses " +
+ "startParallelShell()");
+ };
+
Mongo.prototype.logout = function() {
throw new Error(
"logout() isn't resilient to network errors. Please add requires_non_retryable_commands to your test");