You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
575 B
21 lines
575 B
3 months ago
|
'use strict';
|
||
|
|
||
|
module.exports = function applyReadConcern(schema, options) {
|
||
|
if (options.readConcern !== undefined) {
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
// Don't apply default read concern to operations in transactions,
|
||
|
// because you shouldn't set read concern on individual operations
|
||
|
// within a transaction.
|
||
|
// See: https://www.mongodb.com/docs/manual/reference/read-concern/
|
||
|
if (options && options.session && options.session.transaction) {
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
const level = schema.options?.readConcern?.level;
|
||
|
if (level != null) {
|
||
|
options.readConcern = { level };
|
||
|
}
|
||
|
};
|