Similar to multi_statement_transaction_kill_sessions_atomicity_isolation.js, a kill sessions version of multi_statement_transaction_simple.js should be created to ensure there is coverage for killing sessions during two phase commit. This is necessary because the only multi shard transaction run by the atomicity isolation workload is a read, which skips two phase commit because of the recently added read only optimizations. multi_statement_transaction_simple.js instead runs a transaction with two updates on different _id values, which cannot skip two phase commit if the affected documents are on different shards, which happens randomly depending on the hashed sharding distribution for the chosen values.
As part of this ticket, other concurrency workloads can be considered for kill sessions versions as well, like multi_statement_transaction_all_commands.js and random_moveChunk_broadcast_{update,delete}_transaction.js.
- has to be done after
-
SERVER-40186 The logic in `auto_retry_transaction.js:withTxnAndAutoRetry` does not retry failed commits
- Closed
-
SERVER-40615 killOp while taking global lock for prepare transaction oplog entry fails invariant
- Closed
- is related to
-
SERVER-41278 FSM killSession helper should not kill sessions being run by background hooks
- Closed