275 lines
7.7 KiB
YAML
275 lines
7.7 KiB
YAML
runOn:
|
|
-
|
|
minServerVersion: "4.0"
|
|
topology: ["replicaset"]
|
|
-
|
|
minServerVersion: "4.1.8"
|
|
topology: ["sharded"]
|
|
|
|
database_name: &database_name "withTransaction-tests"
|
|
collection_name: &collection_name "test"
|
|
|
|
data: []
|
|
|
|
tests:
|
|
-
|
|
description: withTransaction and no transaction options set
|
|
useMultipleMongoses: true
|
|
operations: &operations
|
|
-
|
|
name: withTransaction
|
|
object: session0
|
|
arguments:
|
|
callback:
|
|
operations:
|
|
-
|
|
name: insertOne
|
|
object: collection
|
|
arguments:
|
|
session: session0
|
|
document: { _id: 1 }
|
|
result:
|
|
insertedId: 1
|
|
expectations:
|
|
-
|
|
command_started_event:
|
|
command:
|
|
insert: *collection_name
|
|
documents:
|
|
- { _id: 1 }
|
|
ordered: true
|
|
lsid: session0
|
|
txnNumber: { $numberLong: "1" }
|
|
startTransaction: true
|
|
autocommit: false
|
|
# omitted fields
|
|
readConcern: ~
|
|
writeConcern: ~
|
|
command_name: insert
|
|
database_name: *database_name
|
|
-
|
|
command_started_event:
|
|
command:
|
|
commitTransaction: 1
|
|
lsid: session0
|
|
txnNumber: { $numberLong: "1" }
|
|
autocommit: false
|
|
# omitted fields
|
|
readConcern: ~
|
|
startTransaction: ~
|
|
writeConcern: ~
|
|
command_name: commitTransaction
|
|
database_name: admin
|
|
outcome: &outcome
|
|
collection:
|
|
data:
|
|
- { _id: 1 }
|
|
-
|
|
description: withTransaction inherits transaction options from client
|
|
useMultipleMongoses: true
|
|
clientOptions:
|
|
readConcernLevel: local
|
|
w: 1
|
|
operations: *operations
|
|
expectations:
|
|
-
|
|
command_started_event:
|
|
command:
|
|
insert: *collection_name
|
|
documents:
|
|
- { _id: 1 }
|
|
ordered: true
|
|
lsid: session0
|
|
txnNumber: { $numberLong: "1" }
|
|
startTransaction: true
|
|
autocommit: false
|
|
readConcern: { level: local }
|
|
# omitted fields
|
|
writeConcern: ~
|
|
command_name: insert
|
|
database_name: *database_name
|
|
-
|
|
command_started_event:
|
|
command:
|
|
commitTransaction: 1
|
|
lsid: session0
|
|
txnNumber: { $numberLong: "1" }
|
|
autocommit: false
|
|
writeConcern: { w: 1 }
|
|
# omitted fields
|
|
readConcern: ~
|
|
startTransaction: ~
|
|
command_name: commitTransaction
|
|
database_name: admin
|
|
outcome: *outcome
|
|
-
|
|
description: withTransaction inherits transaction options from defaultTransactionOptions
|
|
useMultipleMongoses: true
|
|
sessionOptions:
|
|
session0:
|
|
defaultTransactionOptions:
|
|
readConcern: { level: majority }
|
|
writeConcern: { w: 1 }
|
|
operations: *operations
|
|
expectations:
|
|
-
|
|
command_started_event:
|
|
command:
|
|
insert: *collection_name
|
|
documents:
|
|
- { _id: 1 }
|
|
ordered: true
|
|
lsid: session0
|
|
txnNumber: { $numberLong: "1" }
|
|
startTransaction: true
|
|
autocommit: false
|
|
readConcern: { level: majority }
|
|
# omitted fields
|
|
writeConcern: ~
|
|
command_name: insert
|
|
database_name: *database_name
|
|
-
|
|
command_started_event:
|
|
command:
|
|
commitTransaction: 1
|
|
lsid: session0
|
|
txnNumber: { $numberLong: "1" }
|
|
autocommit: false
|
|
writeConcern: { w: 1 }
|
|
# omitted fields
|
|
readConcern: ~
|
|
startTransaction: ~
|
|
command_name: commitTransaction
|
|
database_name: admin
|
|
outcome: *outcome
|
|
-
|
|
description: withTransaction explicit transaction options
|
|
useMultipleMongoses: true
|
|
operations: &operations_explicit_transactionOptions
|
|
-
|
|
name: withTransaction
|
|
object: session0
|
|
arguments:
|
|
callback:
|
|
operations:
|
|
-
|
|
name: insertOne
|
|
object: collection
|
|
arguments:
|
|
session: session0
|
|
document: { _id: 1 }
|
|
result:
|
|
insertedId: 1
|
|
options:
|
|
readConcern: { level: majority }
|
|
writeConcern: { w: 1 }
|
|
expectations:
|
|
-
|
|
command_started_event:
|
|
command:
|
|
insert: *collection_name
|
|
documents:
|
|
- { _id: 1 }
|
|
ordered: true
|
|
lsid: session0
|
|
txnNumber: { $numberLong: "1" }
|
|
startTransaction: true
|
|
autocommit: false
|
|
readConcern: { level: majority }
|
|
# omitted fields
|
|
writeConcern: ~
|
|
command_name: insert
|
|
database_name: *database_name
|
|
-
|
|
command_started_event:
|
|
command:
|
|
commitTransaction: 1
|
|
lsid: session0
|
|
txnNumber: { $numberLong: "1" }
|
|
autocommit: false
|
|
writeConcern: { w: 1 }
|
|
# omitted fields
|
|
readConcern: ~
|
|
startTransaction: ~
|
|
command_name: commitTransaction
|
|
database_name: admin
|
|
outcome: *outcome
|
|
-
|
|
description: withTransaction explicit transaction options override defaultTransactionOptions
|
|
useMultipleMongoses: true
|
|
sessionOptions:
|
|
session0:
|
|
defaultTransactionOptions:
|
|
readConcern: { level: snapshot }
|
|
writeConcern: { w: majority }
|
|
operations: *operations_explicit_transactionOptions
|
|
expectations:
|
|
-
|
|
command_started_event:
|
|
command:
|
|
insert: *collection_name
|
|
documents:
|
|
- { _id: 1 }
|
|
ordered: true
|
|
lsid: session0
|
|
txnNumber: { $numberLong: "1" }
|
|
startTransaction: true
|
|
autocommit: false
|
|
readConcern: { level: majority }
|
|
# omitted fields
|
|
writeConcern: ~
|
|
command_name: insert
|
|
database_name: *database_name
|
|
-
|
|
command_started_event:
|
|
command:
|
|
commitTransaction: 1
|
|
lsid: session0
|
|
txnNumber: { $numberLong: "1" }
|
|
autocommit: false
|
|
writeConcern: { w: 1 }
|
|
# omitted fields
|
|
readConcern: ~
|
|
startTransaction: ~
|
|
command_name: commitTransaction
|
|
database_name: admin
|
|
outcome: *outcome
|
|
-
|
|
description: withTransaction explicit transaction options override client options
|
|
useMultipleMongoses: true
|
|
clientOptions:
|
|
readConcernLevel: local
|
|
w: majority
|
|
operations: *operations_explicit_transactionOptions
|
|
expectations:
|
|
-
|
|
command_started_event:
|
|
command:
|
|
insert: *collection_name
|
|
documents:
|
|
- { _id: 1 }
|
|
ordered: true
|
|
lsid: session0
|
|
txnNumber: { $numberLong: "1" }
|
|
startTransaction: true
|
|
autocommit: false
|
|
readConcern: { level: majority }
|
|
# omitted fields
|
|
writeConcern: ~
|
|
command_name: insert
|
|
database_name: *database_name
|
|
-
|
|
command_started_event:
|
|
command:
|
|
commitTransaction: 1
|
|
lsid: session0
|
|
txnNumber: { $numberLong: "1" }
|
|
autocommit: false
|
|
writeConcern: { w: 1 }
|
|
# omitted fields
|
|
readConcern: ~
|
|
startTransaction: ~
|
|
command_name: commitTransaction
|
|
database_name: admin
|
|
outcome: *outcome
|