New in version 4.0.
"snapshot" is only available for multi-document
A snapshot is a complete copy of the data in a
at a specific point in time. You can retrieve snapshot metadata for the
whole cluster or replica set, or for a single config server in a
cluster. For more details, see snapshots.
If the transaction is not part of a causally consistent session, upon transaction commit with write concern
"majority", the transaction operations are guaranteed to have read from a snapshot of majority-committed data.
If the transaction is part of a causally consistent session, upon transaction commit with write concern
"majority", the transaction operations are guaranteed to have read from a snapshot of majority-committed data that provides causal consistency with the operation immediately preceding the transaction start.
For a list of all operations that accept read concerns, see Operations That Support Read Concern.
Read Concern and Transactions
Multi-document transactions support read concern
"snapshot" as well as
You set the read concern at the transaction level, not at the individual operation level. To set the read concern for transactions, see Transactions and Read Concern.
For transactions on a sharded cluster, if any operation in the
transaction involves a shard that has disabled read concern
"majority", you cannot use read
"snapshot" for the transaction. You can only use
the transaction. If you use read concern
transaction errors and aborts. For more information, see
Disabled Read Concern Majority.