1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131
|
runOn:
-
minServerVersion: "4.3.4"
topology: ["replicaset", "sharded"]
database_name: &database_name "transaction-tests"
collection_name: &collection_name "test"
data: []
tests:
- description: explicitly create collection using create command
operations:
- name: dropCollection
object: database
arguments:
collection: *collection_name
- name: startTransaction
object: session0
- name: createCollection
object: database
arguments:
session: session0
collection: *collection_name
- name: assertCollectionNotExists
object: testRunner
arguments:
database: *database_name
collection: *collection_name
- name: commitTransaction
object: session0
- name: assertCollectionExists
object: testRunner
arguments:
database: *database_name
collection: *collection_name
expectations:
- command_started_event:
command:
drop: *collection_name
writeConcern:
command_name: drop
database_name: *database_name
- command_started_event:
command:
create: *collection_name
lsid: session0
txnNumber:
$numberLong: "1"
startTransaction: true
autocommit: false
writeConcern:
command_name: create
database_name: *database_name
- command_started_event:
command:
commitTransaction: 1
lsid: session0
txnNumber:
$numberLong: "1"
startTransaction:
autocommit: false
writeConcern:
command_name: commitTransaction
database_name: admin
- description: implicitly create collection using insert
operations:
- name: dropCollection
object: database
arguments:
collection: *collection_name
- name: startTransaction
object: session0
- name: insertOne
object: collection
arguments:
session: session0
document:
_id: 1
result:
insertedId: 1
- name: assertCollectionNotExists
object: testRunner
arguments:
database: *database_name
collection: *collection_name
- name: commitTransaction
object: session0
- name: assertCollectionExists
object: testRunner
arguments:
database: *database_name
collection: *collection_name
expectations:
- command_started_event:
command:
drop: *collection_name
writeConcern:
command_name: drop
database_name: *database_name
- command_started_event:
command:
insert: *collection_name
documents:
- _id: 1
ordered: true
readConcern:
lsid: session0
txnNumber:
$numberLong: "1"
startTransaction: true
autocommit: false
writeConcern:
command_name: insert
database_name: *database_name
- command_started_event:
command:
commitTransaction: 1
lsid: session0
txnNumber:
$numberLong: "1"
startTransaction:
autocommit: false
writeConcern:
command_name: commitTransaction
database_name: admin
|