Mongo.startSession()
On this page
Definition
Mongo.startSession(<options>)-
Starts a session for the connection.
mongoshassigns the session ID to commands associated with the session.Important
mongosh Method
This page documents a
mongoshmethod. This is not the documentation for database commands or language-specific drivers, such as Node.js.For the database command, see the
startSessioncommand.For MongoDB API drivers, refer to the language-specific MongoDB driver documentation.
For the legacy
mongoshell documentation, refer to the documentation for the corresponding MongoDB Server release:The
startSession()method can take a document with session options. The options available are:Field Description causalConsistency Boolean. Enables or disables causal consistency for the session. Mongo.startSession()enablescausalConsistencyby default.
After starting a session, you cannot modify itscausalConsistencysetting.Note
The session may have causal consistency enabled even though theMongo()connection object may have causal consistency disabled or vice versa. To set causal consistency on the connection object, seeMongo.setCausalConsistency().readConcern Document. Specifies the read concern.
To modify the setting after starting a session, seeSession.getOptions().setReadConcern().readPreference Document. Specifies the read preference.
The readPreference document contains themodefield and the optionaltagsfield:{ mode: <string>, tags: <array> }To modify the setting after starting a session, see
Session.getOptions().setReadPreference().retryWrites Boolean. Enables or disables the ability to retry writes upon encountering transient network errors.
If you startmongoshwith the--retryWritesoption,retryWritesis enabled by default forMongo.startSession().
After starting a session, you cannot modify itsretryWritessetting.writeConcern Document. Specifies the write concern.
To modify the setting after starting a session, seeSession.getOptions().setWriteConcern().
Examples
The following starts a session with causal consistency and retryable writes enabled on the Mongo() connection object associated with mongosh's global db variable:
db = db.getMongo().startSession({retryWrites: true, causalConsistency: true}).getDatabase(db.getName());