summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCharlie Swanson <charlie.swanson@mongodb.com>2020-05-19 14:56:19 -0400
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2020-05-20 20:43:44 +0000
commitb2b65781fd8695292d737355c583c5d83774d8a1 (patch)
treef844fef617623ed9f2f725e2adf883cb01c9e746
parentc97dc0af795864a77f1096a6a0aa8798142723ce (diff)
downloadmongo-b2b65781fd8695292d737355c583c5d83774d8a1.tar.gz
SERVER-48051 Avoid known namespace conflict on concurrent mapReduces
We know that the implementation of mapReduce on a 4.2 mongos will choose a namespace for mapReduce results to be sent to temporarily, and the name is not unique enough. This patch blacklists mixed-version testing of mapReduce in the concurrency suite.
-rw-r--r--jstests/concurrency/fsm_workloads/map_reduce_drop.js2
-rw-r--r--jstests/concurrency/fsm_workloads/map_reduce_inline.js4
-rw-r--r--jstests/concurrency/fsm_workloads/map_reduce_interrupt.js4
-rw-r--r--jstests/concurrency/fsm_workloads/map_reduce_merge.js4
-rw-r--r--jstests/concurrency/fsm_workloads/map_reduce_reduce.js2
-rw-r--r--jstests/concurrency/fsm_workloads/map_reduce_replace.js4
-rw-r--r--jstests/concurrency/fsm_workloads/map_reduce_replace_nonexistent.js4
-rw-r--r--jstests/concurrency/fsm_workloads/map_reduce_replace_remove.js4
-rw-r--r--jstests/concurrency/fsm_workloads/map_reduce_with_chunk_migrations.js3
9 files changed, 24 insertions, 7 deletions
diff --git a/jstests/concurrency/fsm_workloads/map_reduce_drop.js b/jstests/concurrency/fsm_workloads/map_reduce_drop.js
index ad37c26eda3..ab6b2c41ad5 100644
--- a/jstests/concurrency/fsm_workloads/map_reduce_drop.js
+++ b/jstests/concurrency/fsm_workloads/map_reduce_drop.js
@@ -14,6 +14,8 @@
* @tags: [
* # mapReduce does not support afterClusterTime.
* does_not_support_causal_consistency,
+ * # The old implementation of mapReduce can conflict on temporary namespaces if run concurrently.
+ * requires_fcv_44,
* ]
*/
var $config = (function() {
diff --git a/jstests/concurrency/fsm_workloads/map_reduce_inline.js b/jstests/concurrency/fsm_workloads/map_reduce_inline.js
index 96b71c191f4..755343a0bd1 100644
--- a/jstests/concurrency/fsm_workloads/map_reduce_inline.js
+++ b/jstests/concurrency/fsm_workloads/map_reduce_inline.js
@@ -10,7 +10,9 @@
* Used as the base workload for the other map-reduce workloads.
* @tags: [
* # mapReduce does not support afterClusterTime.
- * does_not_support_causal_consistency
+ * does_not_support_causal_consistency,
+ * # The old implementation of mapReduce can conflict on temporary namespaces if run concurrently.
+ * requires_fcv_44,
* ]
*/
var $config = (function() {
diff --git a/jstests/concurrency/fsm_workloads/map_reduce_interrupt.js b/jstests/concurrency/fsm_workloads/map_reduce_interrupt.js
index 38383283c47..d311432c928 100644
--- a/jstests/concurrency/fsm_workloads/map_reduce_interrupt.js
+++ b/jstests/concurrency/fsm_workloads/map_reduce_interrupt.js
@@ -10,7 +10,9 @@
* @tags: [
* # mapReduce does not support afterClusterTime.
* does_not_support_causal_consistency,
- * uses_curop_agg_stage
+ * uses_curop_agg_stage,
+ * # The old implementation of mapReduce can conflict on temporary namespaces if run concurrently.
+ * requires_fcv_44,
* ]
*/
load('jstests/concurrency/fsm_libs/extend_workload.js'); // for extendWorkload
diff --git a/jstests/concurrency/fsm_workloads/map_reduce_merge.js b/jstests/concurrency/fsm_workloads/map_reduce_merge.js
index 05fd0d54910..970b2cc9e35 100644
--- a/jstests/concurrency/fsm_workloads/map_reduce_merge.js
+++ b/jstests/concurrency/fsm_workloads/map_reduce_merge.js
@@ -14,7 +14,9 @@
* Writes the results of each thread to the same collection.
* @tags: [
* # mapReduce does not support afterClusterTime.
- * does_not_support_causal_consistency
+ * does_not_support_causal_consistency,
+ * # The old implementation of mapReduce can conflict on temporary namespaces if run concurrently.
+ * requires_fcv_44,
* ]
*/
load('jstests/concurrency/fsm_libs/extend_workload.js'); // for extendWorkload
diff --git a/jstests/concurrency/fsm_workloads/map_reduce_reduce.js b/jstests/concurrency/fsm_workloads/map_reduce_reduce.js
index 20328d6da0b..94bdd2363cf 100644
--- a/jstests/concurrency/fsm_workloads/map_reduce_reduce.js
+++ b/jstests/concurrency/fsm_workloads/map_reduce_reduce.js
@@ -13,6 +13,8 @@
* @tags: [
* # mapReduce does not support afterClusterTime.
* does_not_support_causal_consistency,
+ * # The old implementation of mapReduce can conflict on temporary namespaces if run concurrently.
+ * requires_fcv_44
* ]
*/
load('jstests/concurrency/fsm_libs/extend_workload.js'); // for extendWorkload
diff --git a/jstests/concurrency/fsm_workloads/map_reduce_replace.js b/jstests/concurrency/fsm_workloads/map_reduce_replace.js
index 074dad1732a..2aa5597e68b 100644
--- a/jstests/concurrency/fsm_workloads/map_reduce_replace.js
+++ b/jstests/concurrency/fsm_workloads/map_reduce_replace.js
@@ -12,7 +12,9 @@
* collection.
* @tags: [
* # mapReduce does not support afterClusterTime.
- * does_not_support_causal_consistency
+ * does_not_support_causal_consistency,
+ * # The old implementation of mapReduce can conflict on temporary namespaces if run concurrently.
+ * requires_fcv_44,
* ]
*/
load('jstests/concurrency/fsm_libs/extend_workload.js'); // for extendWorkload
diff --git a/jstests/concurrency/fsm_workloads/map_reduce_replace_nonexistent.js b/jstests/concurrency/fsm_workloads/map_reduce_replace_nonexistent.js
index 2b9d5a7f756..8b9ed779597 100644
--- a/jstests/concurrency/fsm_workloads/map_reduce_replace_nonexistent.js
+++ b/jstests/concurrency/fsm_workloads/map_reduce_replace_nonexistent.js
@@ -11,7 +11,9 @@
* output collection.
* @tags: [
* # mapReduce does not support afterClusterTime.
- * does_not_support_causal_consistency
+ * does_not_support_causal_consistency,
+ * # The old implementation of mapReduce can conflict on temporary namespaces if run concurrently.
+ * requires_fcv_44,
* ]
*/
load('jstests/concurrency/fsm_libs/extend_workload.js'); // for extendWorkload
diff --git a/jstests/concurrency/fsm_workloads/map_reduce_replace_remove.js b/jstests/concurrency/fsm_workloads/map_reduce_replace_remove.js
index 60e29554027..cc368d2dd54 100644
--- a/jstests/concurrency/fsm_workloads/map_reduce_replace_remove.js
+++ b/jstests/concurrency/fsm_workloads/map_reduce_replace_remove.js
@@ -12,7 +12,9 @@
* This workload was designed to reproduce SERVER-15539.
* @tags: [
* # mapReduce does not support afterClusterTime.
- * does_not_support_causal_consistency
+ * does_not_support_causal_consistency,
+ * # The old implementation of mapReduce can conflict on temporary namespaces if run concurrently.
+ * requires_fcv_44,
* ]
*/
load('jstests/concurrency/fsm_libs/extend_workload.js'); // for extendWorkload
diff --git a/jstests/concurrency/fsm_workloads/map_reduce_with_chunk_migrations.js b/jstests/concurrency/fsm_workloads/map_reduce_with_chunk_migrations.js
index 1fa5acf8fe5..27f57d04e36 100644
--- a/jstests/concurrency/fsm_workloads/map_reduce_with_chunk_migrations.js
+++ b/jstests/concurrency/fsm_workloads/map_reduce_with_chunk_migrations.js
@@ -16,7 +16,8 @@
* requires_non_retryable_writes,
* # mapReduce does not support afterClusterTime.
* does_not_support_causal_consistency,
- * requires_fcv_44
+ * # The old implementation of mapReduce can conflict on temporary namespaces if run concurrently.
+ * requires_fcv_44,
* ]
*/
load('jstests/concurrency/fsm_libs/extend_workload.js'); // for extendWorkload