diff options
author | Charlie Swanson <charlie.swanson@mongodb.com> | 2020-05-19 14:56:19 -0400 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2020-05-20 20:43:44 +0000 |
commit | b2b65781fd8695292d737355c583c5d83774d8a1 (patch) | |
tree | f844fef617623ed9f2f725e2adf883cb01c9e746 | |
parent | c97dc0af795864a77f1096a6a0aa8798142723ce (diff) | |
download | mongo-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.
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 |