Docs Menu

Docs HomeDevelop ApplicationsMongoDB Manual

cursor.readConcern()

On this page

  • Definition
  • Considerations
cursor.readConcern(level)

Important

mongo Shell Method

This page documents the mongo shell method, and does not refer to the MongoDB Node.js driver (or any other driver) method. For corresponding MongoDB driver API, refer to your specific MongoDB driver documentation instead.

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:

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

To use read concern level of "majority", replica sets must use WiredTiger storage engine.

You can disable read concern "majority" for a deployment with a three-member primary-secondary-arbiter (PSA) architecture; however, this has implications for change streams (in MongoDB 4.0 and earlier only) and transactions on sharded clusters. For more information, see Disable Read Concern Majority.

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:

←  cursor.pretty()cursor.readPref() →