diff options
author | Jonathan Reams <jbreams@mongodb.com> | 2020-02-10 10:16:59 +0100 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2020-02-10 13:08:24 +0000 |
commit | 1a8fea4b5a2fe7ec14d88d1ce4e7c8a1eaaa03cd (patch) | |
tree | 2c15f4dc5129ffa398ff4f07938754b62bbfb8a8 /buildscripts | |
parent | 6c9c0b19d5980f065e1ff2ad624bb8d18bb88fe5 (diff) | |
download | mongo-1a8fea4b5a2fe7ec14d88d1ce4e7c8a1eaaa03cd.tar.gz |
SERVER-45807 Add change stream stage to fetch pre-image for update/replace/delete events
create mode 100644 jstests/change_streams/lookup_pre_image.js
create mode 100644 jstests/noPassthrough/change_stream_pre_image_lookup_whole_db_whole_cluster.js
create mode 100644 jstests/noPassthrough/change_stream_preimages_fail_on_mongos.js
create mode 100644 src/mongo/db/pipeline/document_source_lookup_change_pre_image.cpp
create mode 100644 src/mongo/db/pipeline/document_source_lookup_change_pre_image.h
Diffstat (limited to 'buildscripts')
12 files changed, 28 insertions, 0 deletions
diff --git a/buildscripts/resmokeconfig/suites/change_streams_mongos_passthrough.yml b/buildscripts/resmokeconfig/suites/change_streams_mongos_passthrough.yml index f3e3a089fbc..62e5d1a2e1c 100644 --- a/buildscripts/resmokeconfig/suites/change_streams_mongos_passthrough.yml +++ b/buildscripts/resmokeconfig/suites/change_streams_mongos_passthrough.yml @@ -14,6 +14,8 @@ selector: - assumes_write_concern_unchanged # Transactions not supported on sharded clusters. - uses_transactions + # Exclude any that assume sharding is disabled + - assumes_against_mongod_not_mongos executor: archive: diff --git a/buildscripts/resmokeconfig/suites/change_streams_mongos_sessions_passthrough.yml b/buildscripts/resmokeconfig/suites/change_streams_mongos_sessions_passthrough.yml index dbf3a7a093f..05357a578b5 100644 --- a/buildscripts/resmokeconfig/suites/change_streams_mongos_sessions_passthrough.yml +++ b/buildscripts/resmokeconfig/suites/change_streams_mongos_sessions_passthrough.yml @@ -14,6 +14,8 @@ selector: - assumes_write_concern_unchanged # Transactions not supported on sharded clusters. - uses_transactions + # Exclude any that assume sharding is disabled + - assumes_against_mongod_not_mongos executor: archive: diff --git a/buildscripts/resmokeconfig/suites/change_streams_multi_stmt_txn_mongos_passthrough.yml b/buildscripts/resmokeconfig/suites/change_streams_multi_stmt_txn_mongos_passthrough.yml index 88ce52e3d1b..56f91e843c0 100644 --- a/buildscripts/resmokeconfig/suites/change_streams_multi_stmt_txn_mongos_passthrough.yml +++ b/buildscripts/resmokeconfig/suites/change_streams_multi_stmt_txn_mongos_passthrough.yml @@ -15,6 +15,8 @@ selector: # These tests make assumptions about change stream results that are no longer true once operations # get bundled into transactions. - change_stream_does_not_expect_txns + # Exclude any that assume sharding is disabled + - assumes_against_mongod_not_mongos executor: archive: diff --git a/buildscripts/resmokeconfig/suites/change_streams_multi_stmt_txn_sharded_collections_passthrough.yml b/buildscripts/resmokeconfig/suites/change_streams_multi_stmt_txn_sharded_collections_passthrough.yml index 2b5f6f4e5a8..d4b7fee5122 100644 --- a/buildscripts/resmokeconfig/suites/change_streams_multi_stmt_txn_sharded_collections_passthrough.yml +++ b/buildscripts/resmokeconfig/suites/change_streams_multi_stmt_txn_sharded_collections_passthrough.yml @@ -15,6 +15,9 @@ selector: # These tests make assumptions about change stream results that are no longer true once operations # get bundled into transactions. - change_stream_does_not_expect_txns + # Exclude any tests that on't support sharding + - assumes_against_mongod_not_mongos, + - assumes_unsharded_collection executor: archive: diff --git a/buildscripts/resmokeconfig/suites/change_streams_secondary_reads.yml b/buildscripts/resmokeconfig/suites/change_streams_secondary_reads.yml index 54da2e53fdd..e1dc1e9a6fa 100644 --- a/buildscripts/resmokeconfig/suites/change_streams_secondary_reads.yml +++ b/buildscripts/resmokeconfig/suites/change_streams_secondary_reads.yml @@ -27,6 +27,8 @@ selector: - assumes_read_preference_unchanged # Transactions not supported on sharded cluster. - uses_transactions + # Exclude any that assume sharding is disabled + - assumes_against_mongod_not_mongos executor: archive: diff --git a/buildscripts/resmokeconfig/suites/change_streams_sharded_collections_passthrough.yml b/buildscripts/resmokeconfig/suites/change_streams_sharded_collections_passthrough.yml index a737ec614bf..7a7cdd7320f 100644 --- a/buildscripts/resmokeconfig/suites/change_streams_sharded_collections_passthrough.yml +++ b/buildscripts/resmokeconfig/suites/change_streams_sharded_collections_passthrough.yml @@ -15,6 +15,9 @@ selector: - assumes_write_concern_unchanged # Transactions not supported on sharded clusters. - uses_transactions + # Exclude any that assume sharding is disabled + - assumes_against_mongod_not_mongos + - assumes_unsharded_collection executor: archive: diff --git a/buildscripts/resmokeconfig/suites/change_streams_whole_cluster_mongos_passthrough.yml b/buildscripts/resmokeconfig/suites/change_streams_whole_cluster_mongos_passthrough.yml index 3f702c1bb5c..968d2cd6b13 100644 --- a/buildscripts/resmokeconfig/suites/change_streams_whole_cluster_mongos_passthrough.yml +++ b/buildscripts/resmokeconfig/suites/change_streams_whole_cluster_mongos_passthrough.yml @@ -16,6 +16,8 @@ selector: - uses_transactions # Not relevant for whole-cluster change streams. - do_not_run_in_whole_cluster_passthrough + # Exclude any that assume sharding is disabled + - assumes_against_mongod_not_mongos executor: archive: diff --git a/buildscripts/resmokeconfig/suites/change_streams_whole_cluster_secondary_reads_passthrough.yml b/buildscripts/resmokeconfig/suites/change_streams_whole_cluster_secondary_reads_passthrough.yml index cb6c8263015..368b1d4d538 100644 --- a/buildscripts/resmokeconfig/suites/change_streams_whole_cluster_secondary_reads_passthrough.yml +++ b/buildscripts/resmokeconfig/suites/change_streams_whole_cluster_secondary_reads_passthrough.yml @@ -29,6 +29,8 @@ selector: - uses_transactions # Not relevant for whole-cluster change streams. - do_not_run_in_whole_cluster_passthrough + # Exclude any that assume sharding is disabled + - assumes_against_mongod_not_mongos executor: archive: diff --git a/buildscripts/resmokeconfig/suites/change_streams_whole_cluster_sharded_collections_passthrough.yml b/buildscripts/resmokeconfig/suites/change_streams_whole_cluster_sharded_collections_passthrough.yml index 838a57c1e3e..4d38135bc0f 100644 --- a/buildscripts/resmokeconfig/suites/change_streams_whole_cluster_sharded_collections_passthrough.yml +++ b/buildscripts/resmokeconfig/suites/change_streams_whole_cluster_sharded_collections_passthrough.yml @@ -16,6 +16,9 @@ selector: - uses_transactions # Not relevant for whole-cluster change streams. - do_not_run_in_whole_cluster_passthrough + # Exclude any that assume sharding is disabled + - assumes_against_mongod_not_mongos + - assumes_unsharded_collection executor: archive: diff --git a/buildscripts/resmokeconfig/suites/change_streams_whole_db_mongos_passthrough.yml b/buildscripts/resmokeconfig/suites/change_streams_whole_db_mongos_passthrough.yml index 9c4d11901da..d9cd88e7a98 100644 --- a/buildscripts/resmokeconfig/suites/change_streams_whole_db_mongos_passthrough.yml +++ b/buildscripts/resmokeconfig/suites/change_streams_whole_db_mongos_passthrough.yml @@ -17,6 +17,8 @@ selector: - assumes_write_concern_unchanged # Transactions not supported on sharded clusters. - uses_transactions + # Exclude any that assume sharding is disabled + - assumes_against_mongod_not_mongos executor: archive: diff --git a/buildscripts/resmokeconfig/suites/change_streams_whole_db_secondary_reads_passthrough.yml b/buildscripts/resmokeconfig/suites/change_streams_whole_db_secondary_reads_passthrough.yml index 1b6fde42245..88f63128bab 100644 --- a/buildscripts/resmokeconfig/suites/change_streams_whole_db_secondary_reads_passthrough.yml +++ b/buildscripts/resmokeconfig/suites/change_streams_whole_db_secondary_reads_passthrough.yml @@ -29,6 +29,8 @@ selector: - assumes_read_preference_unchanged # Transactions not supported on sharded cluster. - uses_transactions + # Exclude any that assume sharding is disabled + - assumes_against_mongod_not_mongos executor: archive: diff --git a/buildscripts/resmokeconfig/suites/change_streams_whole_db_sharded_collections_passthrough.yml b/buildscripts/resmokeconfig/suites/change_streams_whole_db_sharded_collections_passthrough.yml index 2b3b5ed4064..a861822f3b2 100644 --- a/buildscripts/resmokeconfig/suites/change_streams_whole_db_sharded_collections_passthrough.yml +++ b/buildscripts/resmokeconfig/suites/change_streams_whole_db_sharded_collections_passthrough.yml @@ -17,6 +17,9 @@ selector: - assumes_write_concern_unchanged # Transactions not supported on sharded clusters. - uses_transactions + # Exclude any that assume sharding is disabled + - assumes_against_mongod_not_mongos + - assumes_unsharded_collection executor: archive: |