-
Type:
Improvement
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Query Execution
-
None
-
3
-
None
-
None
-
None
-
None
-
None
-
None
Several tests must be implemented for this project:
- Basic tests that run transactions and check if the endOfTransaction event is present in the change stream. They will use passthrough suites to cover replica set / sharded cluster variants.
- No passthrough tests that should check corner-cases for multi-shard transaction including:
- Transaction that affects different collections: both sharded and unsharded.
- Transaction that affects different databases with different primary shards.
- In cases where multiple namespaces are affected by a transaction, change streams on each of the namespaces should be asserted to have corresponding endOfTransaction events.
- In parallel with transactions, move around chunks of the affected collections.
Tests should also assert that change streams on namespaces, not affected by a transaction, do NOT have stray endOfTransaction events.
If a change stream is associated with a particular namespace, end of transaction events should only contain mentions of this namespace.