...

Text file src/go.mongodb.org/mongo-driver/testdata/sessions/implicit-sessions-default-causal-consistency.yml

Documentation: go.mongodb.org/mongo-driver/testdata/sessions

     1description: "implicit sessions default causal consistency"
     2
     3schemaVersion: "1.3"
     4
     5runOnRequirements:
     6  - minServerVersion: "4.2"
     7    topologies: [replicaset, sharded, load-balanced]
     8
     9createEntities:
    10  - client:
    11      id: &client0 client0
    12      useMultipleMongoses: false
    13      observeEvents: [commandStartedEvent]
    14  - database:
    15      id: &database0 database0
    16      client: *client0
    17      databaseName: &databaseName implicit-cc-tests
    18  - collection:
    19      id: &collectionDefault collectionDefault
    20      database: *database0
    21      collectionName: &collectionNameDefault coll-default
    22  - collection:
    23      id: &collectionSnapshot collectionSnapshot
    24      database: *database0
    25      collectionName: &collectionNameSnapshot coll-snapshot
    26      collectionOptions:
    27        readConcern: { level: snapshot }
    28  - collection:
    29      id: &collectionlinearizable collectionlinearizable
    30      database: *database0
    31      collectionName: &collectionNamelinearizable coll-linearizable
    32      collectionOptions:
    33        readConcern: { level: linearizable }
    34
    35initialData:
    36  - collectionName: *collectionNameDefault
    37    databaseName: *databaseName
    38    documents:
    39      - { _id: 1, x: default }
    40  - collectionName: *collectionNameSnapshot
    41    databaseName: *databaseName
    42    documents:
    43      - { _id: 1, x: snapshot }
    44  - collectionName: *collectionNamelinearizable
    45    databaseName: *databaseName
    46    documents:
    47      - { _id: 1, x: linearizable }
    48
    49tests:
    50  - description: "readConcern is not sent on retried read in implicit session when readConcern level is not specified"
    51    operations:
    52      - &failPointCommand
    53        name: failPoint
    54        object: testRunner
    55        arguments:
    56          client: *client0
    57          failPoint:
    58            configureFailPoint: failCommand
    59            mode: { times: 1 }
    60            data:
    61              failCommands: [find]
    62              errorCode: 11600 #InterruptedAtShutdown
    63      - name: find
    64        object: *collectionDefault
    65        arguments:
    66          filter: {}
    67        expectResult: [{ _id: 1, x: default }]
    68    expectEvents:
    69      - client: *client0
    70        events:
    71          - commandStartedEvent: &commandStartedEventDefault
    72              command:
    73                find: *collectionNameDefault
    74                filter: {}
    75                readConcern: { $$exists: false }
    76              databaseName: *databaseName
    77          - commandStartedEvent: *commandStartedEventDefault
    78
    79  - description: "afterClusterTime is not sent on retried read in implicit session when readConcern level is snapshot"
    80    runOnRequirements:
    81      - minServerVersion: "5.0"
    82    operations:
    83      - *failPointCommand
    84      - name: find
    85        object: *collectionSnapshot
    86        arguments:
    87          filter: {}
    88        expectResult: [{ _id: 1, x: snapshot }]
    89    expectEvents:
    90      - client: *client0
    91        events:
    92          - commandStartedEvent: &commandStartedEventSnapshot
    93              command:
    94                find: *collectionNameSnapshot
    95                filter: {}
    96                readConcern:
    97                  { level: snapshot, afterClusterTime: { $$exists: false } }
    98              databaseName: *databaseName
    99          - commandStartedEvent: *commandStartedEventSnapshot
   100
   101  - description: "afterClusterTime is not sent on retried read in implicit session when readConcern level is linearizable"
   102    operations:
   103      - *failPointCommand
   104      - name: find
   105        object: *collectionlinearizable
   106        arguments:
   107          filter: {}
   108        expectResult: [{ _id: 1, x: linearizable }]
   109    expectEvents:
   110      - client: *client0
   111        events:
   112          - commandStartedEvent: &commandStartedEventLinearizable
   113              command:
   114                find: *collectionNamelinearizable
   115                filter: {}
   116                readConcern:
   117                  { level: linearizable, afterClusterTime: { $$exists: false } }
   118              databaseName: *databaseName
   119          - commandStartedEvent: *commandStartedEventLinearizable

View as plain text