Docs Menu

cursor.readConcern()

On this page

  • Definition
  • Considerations
cursor.readConcern(level)
Important
mongosh Method

This is a mongosh method. This is not the documentation for Node.js or other programming language specific driver methods.

In most cases, mongosh methods work the same way as the legacy mongo shell methods. However, some legacy methods are unavailable in mongosh.

For the legacy mongo shell documentation, refer to the documentation for the corresponding MongoDB Server release:

For MongoDB API drivers, refer to the language specific MongoDB driver documentation.

New in version 3.2.

Specify a read concern for the db.collection.find() method.

The readConcern() method has the following form:

db.collection.find().readConcern(<level>)

The readConcern() method has the following parameter:

Parameter
Type
Description
level
string

Read concern level.

Possible read concern levels are:

  • "local". This is the default read concern level for read operations against the primary and secondaries.
  • "available". Available for read operations against the primary and secondaries. "available" behaves the same as "local" against the primary and non-sharded secondaries. The query returns the instance's most recent data.
  • "majority". Available for replica sets that use WiredTiger storage engine.
  • "linearizable". Available for read operations on the primary only.

For more formation on the read concern levels, see Read Concern Levels.

Starting in MongoDB 3.6, you can use causally consistent sessions to read your own writes, if the writes request acknowledgement.

Prior to MongoDB 3.6, in order to read your own writes you must issue your write operation with { w: "majority" } write concern, and then issue your read operation with primary read preference, and either "majority" or "linearizable" read concern.

When specifying linearizable read concern, always use maxTimeMS() in case a majority of data bearing members are unavailable.

db.restaurants.find( { _id: 5 } ).readConcern("linearizable").maxTimeMS(10000)
Tip
See also:
Give Feedback
MongoDB logo
© 2021 MongoDB, Inc.

About

  • Careers
  • Legal Notices
  • Privacy Notices
  • Security Information
  • Trust Center
© 2021 MongoDB, Inc.